chore: use NoopConsensus in CLI unwind (#13487)

This commit is contained in:
Arsenii Kulikov
2024-12-22 21:29:27 +04:00
committed by GitHub
parent e0ba41d6d4
commit 2dd0ec340d

View File

@ -4,20 +4,18 @@ use crate::common::{AccessRights, CliNodeTypes, Environment, EnvironmentArgs};
use alloy_eips::BlockHashOrNumber; use alloy_eips::BlockHashOrNumber;
use alloy_primitives::B256; use alloy_primitives::B256;
use clap::{Parser, Subcommand}; use clap::{Parser, Subcommand};
use reth_beacon_consensus::EthBeaconConsensus;
use reth_chainspec::{EthChainSpec, EthereumHardforks}; use reth_chainspec::{EthChainSpec, EthereumHardforks};
use reth_cli::chainspec::ChainSpecParser; use reth_cli::chainspec::ChainSpecParser;
use reth_config::Config; use reth_config::Config;
use reth_consensus::Consensus; use reth_consensus::noop::NoopConsensus;
use reth_db::DatabaseEnv; use reth_db::DatabaseEnv;
use reth_downloaders::{bodies::noop::NoopBodiesDownloader, headers::noop::NoopHeaderDownloader}; use reth_downloaders::{bodies::noop::NoopBodiesDownloader, headers::noop::NoopHeaderDownloader};
use reth_evm::noop::NoopBlockExecutorProvider; use reth_evm::noop::NoopBlockExecutorProvider;
use reth_exex::ExExManagerHandle; use reth_exex::ExExManagerHandle;
use reth_node_core::args::NetworkArgs; use reth_node_core::args::NetworkArgs;
use reth_provider::{ use reth_provider::{
providers::ProviderNodeTypes, BlockExecutionWriter, BlockNumReader, ChainSpecProvider, providers::ProviderNodeTypes, BlockExecutionWriter, BlockNumReader, ChainStateBlockReader,
ChainStateBlockReader, ChainStateBlockWriter, ProviderFactory, StaticFileProviderFactory, ChainStateBlockWriter, ProviderFactory, StaticFileProviderFactory, StorageLocation,
StorageLocation,
}; };
use reth_prune::PruneModes; use reth_prune::PruneModes;
use reth_stages::{ use reth_stages::{
@ -112,8 +110,6 @@ impl<C: ChainSpecParser<ChainSpec: EthChainSpec + EthereumHardforks>> Command<C>
config: Config, config: Config,
provider_factory: ProviderFactory<N>, provider_factory: ProviderFactory<N>,
) -> Result<Pipeline<N>, eyre::Error> { ) -> Result<Pipeline<N>, eyre::Error> {
let consensus: Arc<dyn Consensus> =
Arc::new(EthBeaconConsensus::new(provider_factory.chain_spec()));
let stage_conf = &config.stages; let stage_conf = &config.stages;
let prune_modes = config.prune.clone().map(|prune| prune.segments).unwrap_or_default(); let prune_modes = config.prune.clone().map(|prune| prune.segments).unwrap_or_default();
@ -133,7 +129,7 @@ impl<C: ChainSpecParser<ChainSpec: EthChainSpec + EthereumHardforks>> Command<C>
DefaultStages::new( DefaultStages::new(
provider_factory.clone(), provider_factory.clone(),
tip_rx, tip_rx,
Arc::clone(&consensus), Arc::new(NoopConsensus::default()),
NoopHeaderDownloader::default(), NoopHeaderDownloader::default(),
NoopBodiesDownloader::default(), NoopBodiesDownloader::default(),
executor.clone(), executor.clone(),