diff --git a/core/src/banking_stage/transaction_scheduler/receive_and_buffer.rs b/core/src/banking_stage/transaction_scheduler/receive_and_buffer.rs index 4e38ff3c5e4ff8..92d6f1543f599d 100644 --- a/core/src/banking_stage/transaction_scheduler/receive_and_buffer.rs +++ b/core/src/banking_stage/transaction_scheduler/receive_and_buffer.rs @@ -481,6 +481,11 @@ impl TransactionViewReceiveAndBuffer { return Err(()); }; + // Discard non-vote packets if in vote-only mode. + if root_bank.vote_only_bank() && !view.is_simple_vote_transaction() { + return Err(()); + } + // Check excessive pre-compiles. let signature_details = view.signature_details(); let num_precompiles = signature_details.num_ed25519_instruction_signatures()