BankingStage Refactor: Separate Consumer Module (#30238)
This commit is contained in:
parent
a36e1b211d
commit
beb3cd5ed9
|
@ -10,7 +10,9 @@ use {
|
|||
rayon::prelude::*,
|
||||
solana_client::connection_cache::ConnectionCache,
|
||||
solana_core::{
|
||||
banking_stage::{committer::Committer, BankingStage, BankingStageStats},
|
||||
banking_stage::{
|
||||
committer::Committer, consumer::Consumer, BankingStage, BankingStageStats,
|
||||
},
|
||||
banking_trace::{BankingPacketBatch, BankingTracer},
|
||||
leader_slot_banking_stage_metrics::LeaderSlotMetricsTracker,
|
||||
qos_service::QosService,
|
||||
|
@ -95,7 +97,7 @@ fn bench_consume_buffered(bencher: &mut Bencher) {
|
|||
// This tests the performance of buffering packets.
|
||||
// If the packet buffers are copied, performance will be poor.
|
||||
bencher.iter(move || {
|
||||
BankingStage::consume_buffered_packets(
|
||||
Consumer::consume_buffered_packets(
|
||||
&bank_start,
|
||||
&mut transaction_buffer,
|
||||
None::<Box<dyn Fn()>>,
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,5 +1,4 @@
|
|||
use {
|
||||
super::PreBalanceInfo,
|
||||
crate::leader_slot_banking_stage_timing_metrics::LeaderExecuteAndCommitTimings,
|
||||
solana_ledger::{
|
||||
blockstore_processor::TransactionStatusSender, token_balances::collect_token_balances,
|
||||
|
@ -15,9 +14,11 @@ use {
|
|||
transaction_batch::TransactionBatch,
|
||||
vote_sender_types::ReplayVoteSender,
|
||||
},
|
||||
solana_sdk::saturating_add_assign,
|
||||
solana_transaction_status::token_balances::TransactionTokenBalancesSet,
|
||||
std::sync::Arc,
|
||||
solana_sdk::{pubkey::Pubkey, saturating_add_assign},
|
||||
solana_transaction_status::{
|
||||
token_balances::TransactionTokenBalancesSet, TransactionTokenBalance,
|
||||
},
|
||||
std::{collections::HashMap, sync::Arc},
|
||||
};
|
||||
|
||||
#[derive(Clone, Debug, PartialEq, Eq)]
|
||||
|
@ -26,6 +27,13 @@ pub enum CommitTransactionDetails {
|
|||
NotCommitted,
|
||||
}
|
||||
|
||||
#[derive(Default)]
|
||||
pub(super) struct PreBalanceInfo {
|
||||
pub native: Vec<Vec<u64>>,
|
||||
pub token: Vec<Vec<TransactionTokenBalance>>,
|
||||
pub mint_decimals: HashMap<Pubkey, u8>,
|
||||
}
|
||||
|
||||
pub struct Committer {
|
||||
transaction_status_sender: Option<TransactionStatusSender>,
|
||||
replay_vote_sender: ReplayVoteSender,
|
||||
|
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue