Double the chunk size for sending the program binary data in tx

This commit is contained in:
Dmitri Makarov
2022-03-14 18:41:03 -07:00
committed by Dmitri Makarov
parent 210f6a6fab
commit 03ed334ebb
2 changed files with 14 additions and 12 deletions

View File

@ -113,7 +113,7 @@ fn write_bpf_program(
program_keypair: &Keypair, program_keypair: &Keypair,
elf: &[u8], elf: &[u8],
) { ) {
let chunk_size = 256; // Size of chunk just needs to fit into tx let chunk_size = 512; // Size of chunk just needs to fit into tx
let mut offset = 0; let mut offset = 0;
for chunk in elf.chunks(chunk_size) { for chunk in elf.chunks(chunk_size) {
let instruction = let instruction =
@ -1437,20 +1437,20 @@ fn assert_instruction_count() {
{ {
programs.extend_from_slice(&[ programs.extend_from_slice(&[
("solana_bpf_rust_128bit", 584), ("solana_bpf_rust_128bit", 584),
("solana_bpf_rust_alloc", 4559), ("solana_bpf_rust_alloc", 4459),
("solana_bpf_rust_custom_heap", 458), ("solana_bpf_rust_custom_heap", 469),
("solana_bpf_rust_dep_crate", 2), ("solana_bpf_rust_dep_crate", 2),
("solana_bpf_rust_external_spend", 327), ("solana_bpf_rust_external_spend", 338),
("solana_bpf_rust_iter", 108), ("solana_bpf_rust_iter", 108),
("solana_bpf_rust_many_args", 1289), ("solana_bpf_rust_many_args", 1289),
("solana_bpf_rust_mem", 2217), ("solana_bpf_rust_mem", 2118),
("solana_bpf_rust_membuiltins", 1705), ("solana_bpf_rust_membuiltins", 1539),
("solana_bpf_rust_noop", 315), ("solana_bpf_rust_noop", 326),
("solana_bpf_rust_param_passing", 146), ("solana_bpf_rust_param_passing", 146),
("solana_bpf_rust_rand", 418), ("solana_bpf_rust_rand", 429),
("solana_bpf_rust_sanity", 52170), ("solana_bpf_rust_sanity", 9139),
("solana_bpf_rust_secp256k1_recover", 25707), ("solana_bpf_rust_secp256k1_recover", 25707),
("solana_bpf_rust_sha", 25338), ("solana_bpf_rust_sha", 26390),
]); ]);
} }

View File

@ -12,6 +12,8 @@ use {
}, },
}; };
const CHUNK_SIZE: usize = 512; // Size of chunk just needs to fit into tx
pub fn load_program<T: Client>( pub fn load_program<T: Client>(
bank_client: &T, bank_client: &T,
from_keypair: &Keypair, from_keypair: &Keypair,
@ -39,7 +41,7 @@ pub fn load_program<T: Client>(
) )
.unwrap(); .unwrap();
let chunk_size = 256; // Size of chunk just needs to fit into tx let chunk_size = CHUNK_SIZE;
let mut offset = 0; let mut offset = 0;
for chunk in program.chunks(chunk_size) { for chunk in program.chunks(chunk_size) {
let instruction = let instruction =
@ -91,7 +93,7 @@ pub fn load_buffer_account<T: Client>(
) )
.unwrap(); .unwrap();
let chunk_size = 256; // Size of chunk just needs to fit into tx let chunk_size = CHUNK_SIZE;
let mut offset = 0; let mut offset = 0;
for chunk in program.chunks(chunk_size) { for chunk in program.chunks(chunk_size) {
let message = Message::new( let message = Message::new(