Funding transactions must specify data limit (#32131)
This commit is contained in:
parent
d79b565c72
commit
a875562ccd
|
@ -1100,6 +1100,7 @@ pub fn fund_keypairs<T: 'static + BenchTpsClient + Send + Sync + ?Sized>(
|
||||||
total,
|
total,
|
||||||
max_fee,
|
max_fee,
|
||||||
lamports_per_account,
|
lamports_per_account,
|
||||||
|
TRANSFER_TRANSACTION_LOADED_ACCOUNTS_DATA_SIZE,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
Ok(())
|
Ok(())
|
||||||
|
|
|
@ -6,6 +6,7 @@ use {
|
||||||
solana_measure::measure::Measure,
|
solana_measure::measure::Measure,
|
||||||
solana_sdk::{
|
solana_sdk::{
|
||||||
commitment_config::CommitmentConfig,
|
commitment_config::CommitmentConfig,
|
||||||
|
compute_budget::ComputeBudgetInstruction,
|
||||||
hash::Hash,
|
hash::Hash,
|
||||||
message::Message,
|
message::Message,
|
||||||
nonce::State,
|
nonce::State,
|
||||||
|
@ -65,6 +66,7 @@ pub fn fund_keys<T: 'static + BenchTpsClient + Send + Sync + ?Sized>(
|
||||||
total: u64,
|
total: u64,
|
||||||
max_fee: u64,
|
max_fee: u64,
|
||||||
lamports_per_account: u64,
|
lamports_per_account: u64,
|
||||||
|
data_size_limit: u32,
|
||||||
) {
|
) {
|
||||||
let mut funded: Vec<&Keypair> = vec![source];
|
let mut funded: Vec<&Keypair> = vec![source];
|
||||||
let mut funded_funds = total;
|
let mut funded_funds = total;
|
||||||
|
@ -87,6 +89,7 @@ pub fn fund_keys<T: 'static + BenchTpsClient + Send + Sync + ?Sized>(
|
||||||
&client,
|
&client,
|
||||||
chunk,
|
chunk,
|
||||||
to_lamports,
|
to_lamports,
|
||||||
|
data_size_limit,
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -347,6 +350,7 @@ trait FundingTransactions<'a>: SendBatchTransactions<'a, FundingSigners<'a>> {
|
||||||
client: &Arc<T>,
|
client: &Arc<T>,
|
||||||
to_fund: &FundingChunk<'a>,
|
to_fund: &FundingChunk<'a>,
|
||||||
to_lamports: u64,
|
to_lamports: u64,
|
||||||
|
data_size_limit: u32,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -356,9 +360,13 @@ impl<'a> FundingTransactions<'a> for FundingContainer<'a> {
|
||||||
client: &Arc<T>,
|
client: &Arc<T>,
|
||||||
to_fund: &FundingChunk<'a>,
|
to_fund: &FundingChunk<'a>,
|
||||||
to_lamports: u64,
|
to_lamports: u64,
|
||||||
|
data_size_limit: u32,
|
||||||
) {
|
) {
|
||||||
self.make(to_fund, |(k, t)| -> (FundingSigners<'a>, Transaction) {
|
self.make(to_fund, |(k, t)| -> (FundingSigners<'a>, Transaction) {
|
||||||
let instructions = system_instruction::transfer_many(&k.pubkey(), t);
|
let mut instructions = system_instruction::transfer_many(&k.pubkey(), t);
|
||||||
|
instructions.push(
|
||||||
|
ComputeBudgetInstruction::set_loaded_accounts_data_size_limit(data_size_limit),
|
||||||
|
);
|
||||||
let message = Message::new(&instructions, Some(&k.pubkey()));
|
let message = Message::new(&instructions, Some(&k.pubkey()));
|
||||||
(*k, Transaction::new_unsigned(message))
|
(*k, Transaction::new_unsigned(message))
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in New Issue