From 81d19c079cbacfdaa5f4c2e93029852d4f6bda38 Mon Sep 17 00:00:00 2001 From: Andrew Fitzgerald Date: Mon, 10 Feb 2025 13:18:41 -0600 Subject: [PATCH] Scheduler: earlier fee check on receive (#4865) --- .../transaction_scheduler/receive_and_buffer.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) 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 bc56f32f26916d..aa59c97b33f90b 100644 --- a/core/src/banking_stage/transaction_scheduler/receive_and_buffer.rs +++ b/core/src/banking_stage/transaction_scheduler/receive_and_buffer.rs @@ -7,7 +7,7 @@ use { }, }, crate::banking_stage::{ - decision_maker::BufferedPacketsDecision, + consumer::Consumer, decision_maker::BufferedPacketsDecision, immutable_deserialized_packet::ImmutableDeserializedPacket, packet_deserializer::PacketDeserializer, packet_filter::MAX_ALLOWED_PRECOMPILE_SIGNATURES, scheduler_messages::MaxAge, @@ -244,6 +244,10 @@ impl SanitizedTransactionReceiveAndBuffer { .zip(fee_budget_limits_vec.drain(..)) .zip(check_results) .filter(|(_, check_result)| check_result.is_ok()) + .filter(|((((_, tx), _), _), _)| { + Consumer::check_fee_payer_unlocked(&working_bank, tx, &mut error_counts) + .is_ok() + }) { saturating_add_assign!(post_transaction_check_count, 1);