chore: reduce blockchaintree usage (#13702)

This commit is contained in:
Matthias Seitz
2025-01-07 14:51:11 +01:00
committed by GitHub
parent 3e86bb54d4
commit 61bbca1ae0
7 changed files with 19 additions and 38 deletions

View File

@ -53,7 +53,6 @@ rmp-serde = "1.3"
tracing.workspace = true
[dev-dependencies]
reth-blockchain-tree.workspace = true
reth-db-common.workspace = true
reth-evm-ethereum.workspace = true
reth-node-api.workspace = true

View File

@ -231,16 +231,14 @@ mod tests {
backfill::test_utils::{blocks_and_execution_outputs, chain_spec, to_execution_outcome},
BackfillJobFactory,
};
use reth_blockchain_tree::noop::NoopBlockchainTree;
use reth_db_common::init::init_genesis;
use reth_evm_ethereum::execute::EthExecutorProvider;
use reth_primitives_traits::crypto::secp256k1::public_key_to_address;
use reth_provider::{
providers::BlockchainProvider, test_utils::create_test_provider_factory_with_chain_spec,
providers::BlockchainProvider2, test_utils::create_test_provider_factory_with_chain_spec,
};
use reth_testing_utils::generators;
use secp256k1::Keypair;
use std::sync::Arc;
#[test]
fn test_backfill() -> eyre::Result<()> {
@ -255,10 +253,7 @@ mod tests {
let executor = EthExecutorProvider::ethereum(chain_spec.clone());
let provider_factory = create_test_provider_factory_with_chain_spec(chain_spec.clone());
init_genesis(&provider_factory)?;
let blockchain_db = BlockchainProvider::new(
provider_factory.clone(),
Arc::new(NoopBlockchainTree::default()),
)?;
let blockchain_db = BlockchainProvider2::new(provider_factory.clone())?;
let blocks_and_execution_outputs =
blocks_and_execution_outputs(provider_factory, chain_spec, key_pair)?;
@ -294,10 +289,7 @@ mod tests {
let executor = EthExecutorProvider::ethereum(chain_spec.clone());
let provider_factory = create_test_provider_factory_with_chain_spec(chain_spec.clone());
init_genesis(&provider_factory)?;
let blockchain_db = BlockchainProvider::new(
provider_factory.clone(),
Arc::new(NoopBlockchainTree::default()),
)?;
let blockchain_db = BlockchainProvider2::new(provider_factory.clone())?;
let blocks_and_execution_outcomes =
blocks_and_execution_outputs(provider_factory, chain_spec, key_pair)?;

View File

@ -242,17 +242,15 @@ mod tests {
BackfillJobFactory,
};
use futures::StreamExt;
use reth_blockchain_tree::noop::NoopBlockchainTree;
use reth_db_common::init::init_genesis;
use reth_evm_ethereum::execute::EthExecutorProvider;
use reth_primitives_traits::crypto::secp256k1::public_key_to_address;
use reth_provider::{
providers::BlockchainProvider, test_utils::create_test_provider_factory_with_chain_spec,
providers::BlockchainProvider2, test_utils::create_test_provider_factory_with_chain_spec,
};
use reth_stages_api::ExecutionStageThresholds;
use reth_testing_utils::generators;
use secp256k1::Keypair;
use std::sync::Arc;
#[tokio::test]
async fn test_single_blocks() -> eyre::Result<()> {
@ -267,10 +265,7 @@ mod tests {
let executor = EthExecutorProvider::ethereum(chain_spec.clone());
let provider_factory = create_test_provider_factory_with_chain_spec(chain_spec.clone());
init_genesis(&provider_factory)?;
let blockchain_db = BlockchainProvider::new(
provider_factory.clone(),
Arc::new(NoopBlockchainTree::default()),
)?;
let blockchain_db = BlockchainProvider2::new(provider_factory.clone())?;
// Create first 2 blocks
let blocks_and_execution_outcomes =
@ -308,10 +303,7 @@ mod tests {
let executor = EthExecutorProvider::ethereum(chain_spec.clone());
let provider_factory = create_test_provider_factory_with_chain_spec(chain_spec.clone());
init_genesis(&provider_factory)?;
let blockchain_db = BlockchainProvider::new(
provider_factory.clone(),
Arc::new(NoopBlockchainTree::default()),
)?;
let blockchain_db = BlockchainProvider2::new(provider_factory.clone())?;
// Create first 2 blocks
let (blocks, execution_outcome) =

View File

@ -13,7 +13,6 @@ workspace = true
[dependencies]
## reth
reth-chainspec.workspace = true
reth-blockchain-tree.workspace = true
reth-config.workspace = true
reth-consensus = { workspace = true, features = ["test-utils"] }
reth-db = { workspace = true, features = ["test-utils"] }

View File

@ -17,7 +17,6 @@ use std::{
use alloy_eips::BlockNumHash;
use futures_util::FutureExt;
use reth_blockchain_tree::noop::NoopBlockchainTree;
use reth_chainspec::{ChainSpec, MAINNET};
use reth_consensus::test_utils::TestConsensus;
use reth_db::{
@ -38,7 +37,7 @@ use reth_node_builder::{
Components, ComponentsBuilder, ConsensusBuilder, ExecutorBuilder, NodeComponentsBuilder,
PoolBuilder,
},
BuilderContext, Node, NodeAdapter, RethFullAdapter,
BuilderContext, Node, NodeAdapter, RethFullAdapter2,
};
use reth_node_core::node_config::NodeConfig;
use reth_node_ethereum::{
@ -47,13 +46,11 @@ use reth_node_ethereum::{
};
use reth_payload_builder::noop::NoopPayloadBuilderService;
use reth_primitives::{BlockExt, EthPrimitives, Head, SealedBlockWithSenders, TransactionSigned};
use reth_provider::{
providers::{BlockchainProvider, StaticFileProvider},
BlockReader, EthStorage, ProviderFactory,
};
use reth_provider::{providers::StaticFileProvider, BlockReader, EthStorage, ProviderFactory};
use reth_tasks::TaskManager;
use reth_transaction_pool::test_utils::{testing_pool, TestPool};
use reth_provider::providers::BlockchainProvider2;
use tempfile::TempDir;
use thiserror::Error;
use tokio::sync::mpsc::{Sender, UnboundedReceiver};
@ -172,14 +169,14 @@ pub type TmpDB = Arc<TempDatabase<DatabaseEnv>>;
/// The [`NodeAdapter`] for the [`TestExExContext`]. Contains type necessary to
/// boot the testing environment
pub type Adapter = NodeAdapter<
RethFullAdapter<TmpDB, TestNode>,
RethFullAdapter2<TmpDB, TestNode>,
<<TestNode as Node<
FullNodeTypesAdapter<
TestNode,
TmpDB,
BlockchainProvider<NodeTypesWithDBAdapter<TestNode, TmpDB>>,
BlockchainProvider2<NodeTypesWithDBAdapter<TestNode, TmpDB>>,
>,
>>::ComponentsBuilder as NodeComponentsBuilder<RethFullAdapter<TmpDB, TestNode>>>::Components,
>>::ComponentsBuilder as NodeComponentsBuilder<RethFullAdapter2<TmpDB, TestNode>>>::Components,
>;
/// An [`ExExContext`] using the [`Adapter`] type.
pub type TestExExContext = ExExContext<Adapter>;
@ -274,8 +271,7 @@ pub async fn test_exex_context_with_chain_spec(
);
let genesis_hash = init_genesis(&provider_factory)?;
let provider =
BlockchainProvider::new(provider_factory.clone(), Arc::new(NoopBlockchainTree::default()))?;
let provider = BlockchainProvider2::new(provider_factory.clone())?;
let network_manager = NetworkManager::new(
NetworkConfigBuilder::new(SecretKey::new(&mut rand::thread_rng()))