From 9ecb844de7c8e86678c2b7b9a4d149049895303e Mon Sep 17 00:00:00 2001 From: TristanDebrunner Date: Fri, 6 Dec 2019 15:39:35 -0700 Subject: [PATCH] Split up ReplayStageConfig to make it derive Default (#7334) automerge --- core/src/replay_stage.rs | 20 +++++++++----------- core/src/tvu.rs | 14 ++++++++------ 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/core/src/replay_stage.rs b/core/src/replay_stage.rs index e280e4a63..0119e71e1 100644 --- a/core/src/replay_stage.rs +++ b/core/src/replay_stage.rs @@ -64,17 +64,13 @@ impl Drop for Finalizer { } } +#[derive(Default)] pub struct ReplayStageConfig { pub my_pubkey: Pubkey, pub vote_account: Pubkey, pub voting_keypair: Option>, - pub blocktree: Arc, - pub bank_forks: Arc>, - pub cluster_info: Arc>, pub exit: Arc, - pub ledger_signal_receiver: Receiver, pub subscriptions: Arc, - pub poh_recorder: Arc>, pub leader_schedule_cache: Arc, pub slot_full_senders: Vec>, pub snapshot_package_sender: Option, @@ -181,18 +177,20 @@ impl ForkProgress { impl ReplayStage { #[allow(clippy::new_ret_no_self)] - pub fn new(config: ReplayStageConfig) -> (Self, Receiver>>) { + pub fn new( + config: ReplayStageConfig, + blocktree: Arc, + bank_forks: Arc>, + cluster_info: Arc>, + ledger_signal_receiver: Receiver, + poh_recorder: Arc>, + ) -> (Self, Receiver>>) { let ReplayStageConfig { my_pubkey, vote_account, voting_keypair, - blocktree, - bank_forks, - cluster_info, exit, - ledger_signal_receiver, subscriptions, - poh_recorder, leader_schedule_cache, slot_full_senders, snapshot_package_sender, diff --git a/core/src/tvu.rs b/core/src/tvu.rs index e1937d136..f89ce9fb4 100644 --- a/core/src/tvu.rs +++ b/core/src/tvu.rs @@ -163,13 +163,8 @@ impl Tvu { my_pubkey: keypair.pubkey(), vote_account: *vote_account, voting_keypair, - blocktree: blocktree.clone(), - bank_forks: bank_forks.clone(), - cluster_info: cluster_info.clone(), exit: exit.clone(), - ledger_signal_receiver, subscriptions: subscriptions.clone(), - poh_recorder: poh_recorder.clone(), leader_schedule_cache: leader_schedule_cache.clone(), slot_full_senders: vec![blockstream_slot_sender, ledger_cleanup_slot_sender], snapshot_package_sender, @@ -177,7 +172,14 @@ impl Tvu { transaction_status_sender, }; - let (replay_stage, root_bank_receiver) = ReplayStage::new(replay_stage_config); + let (replay_stage, root_bank_receiver) = ReplayStage::new( + replay_stage_config, + blocktree.clone(), + bank_forks.clone(), + cluster_info.clone(), + ledger_signal_receiver, + poh_recorder.clone(), + ); let blockstream_service = if let Some(blockstream_unix_socket) = blockstream_unix_socket { let blockstream_service = BlockstreamService::new(