diff --git a/runtime/src/bank_client.rs b/runtime/src/bank_client.rs index e2cb3e57f3..2c6dabf655 100644 --- a/runtime/src/bank_client.rs +++ b/runtime/src/bank_client.rs @@ -239,7 +239,11 @@ impl SyncClient for BankClient { impl BankClient { fn run(bank: &Bank, transaction_receiver: Receiver) { while let Ok(tx) = transaction_receiver.recv() { - let _ = bank.process_transaction(&tx); + let mut transactions = vec![tx]; + while let Ok(tx) = transaction_receiver.try_recv() { + transactions.push(tx); + } + let _ = bank.process_transactions(&transactions); } }