diff --git a/core/src/tpu.rs b/core/src/tpu.rs index 1c453100b6..23a890dc04 100644 --- a/core/src/tpu.rs +++ b/core/src/tpu.rs @@ -15,6 +15,7 @@ use { sigverify::TransactionSigVerifier, sigverify_stage::SigVerifyStage, staked_nodes_updater_service::StakedNodesUpdaterService, + validator::GeneratorConfig, }, crossbeam_channel::{unbounded, Receiver}, solana_client::connection_cache::{ConnectionCache, Protocol}, @@ -106,6 +107,7 @@ impl Tpu { tracer_thread_hdl: TracerThread, tpu_enable_udp: bool, prioritization_fee_cache: &Arc, + _generator_config: Option, /* vestigial code for replay invalidator */ ) -> Self { let TpuSockets { transactions: transactions_sockets, diff --git a/core/src/validator.rs b/core/src/validator.rs index 8da445edf2..964e12b52a 100644 --- a/core/src/validator.rs +++ b/core/src/validator.rs @@ -175,6 +175,13 @@ impl BlockProductionMethod { } } +/// Configuration for the block generator invalidator for replay. +#[derive(Clone, Debug)] +pub struct GeneratorConfig { + pub accounts_path: String, + pub starting_keypairs: Arc>, +} + pub struct ValidatorConfig { pub halt_at_slot: Option, pub expected_genesis_hash: Option, @@ -240,6 +247,7 @@ pub struct ValidatorConfig { pub banking_trace_dir_byte_limit: banking_trace::DirByteLimit, pub block_verification_method: BlockVerificationMethod, pub block_production_method: BlockProductionMethod, + pub generator_config: Option, } impl Default for ValidatorConfig { @@ -306,6 +314,7 @@ impl Default for ValidatorConfig { banking_trace_dir_byte_limit: 0, block_verification_method: BlockVerificationMethod::default(), block_production_method: BlockProductionMethod::default(), + generator_config: None, } } } @@ -1184,6 +1193,7 @@ impl Validator { tracer_thread, tpu_enable_udp, &prioritization_fee_cache, + config.generator_config.clone(), ); datapoint_info!( diff --git a/local-cluster/src/validator_configs.rs b/local-cluster/src/validator_configs.rs index 7d03b57d21..51d54fc491 100644 --- a/local-cluster/src/validator_configs.rs +++ b/local-cluster/src/validator_configs.rs @@ -68,6 +68,7 @@ pub fn safe_clone_config(config: &ValidatorConfig) -> ValidatorConfig { banking_trace_dir_byte_limit: config.banking_trace_dir_byte_limit, block_verification_method: config.block_verification_method.clone(), block_production_method: config.block_production_method.clone(), + generator_config: config.generator_config.clone(), } }