diff --git a/crates/chainspec/src/spec.rs b/crates/chainspec/src/spec.rs index b1df34985..6f3f5a99d 100644 --- a/crates/chainspec/src/spec.rs +++ b/crates/chainspec/src/spec.rs @@ -11,13 +11,10 @@ use reth_ethereum_forks::{ ForkFilter, ForkFilterKey, ForkHash, ForkId, Hardfork, Head, DEV_HARDFORKS, }; use reth_network_peers::{ - base_nodes, base_testnet_nodes, holesky_nodes, mainnet_nodes, op_nodes, op_testnet_nodes, + base_nodes, base_testnet_nodes, bsc_mainnet_nodes, bsc_testnet_nodes, holesky_nodes, + mainnet_nodes, op_nodes, op_testnet_nodes, opbnb_mainnet_nodes, opbnb_testnet_nodes, sepolia_nodes, NodeRecord, }; -#[cfg(feature = "bsc")] -use reth_network_peers::{bsc_mainnet_nodes, bsc_testnet_nodes}; -#[cfg(feature = "opbnb")] -use reth_network_peers::{opbnb_mainnet_nodes, opbnb_testnet_nodes}; use reth_primitives_traits::{ constants::{ DEV_GENESIS_HASH, EIP1559_INITIAL_BASE_FEE, EMPTY_WITHDRAWALS, ETHEREUM_BLOCK_GAS_LIMIT, diff --git a/crates/engine/tree/src/tree/mod.rs b/crates/engine/tree/src/tree/mod.rs index f51db9a63..9d0d65839 100644 --- a/crates/engine/tree/src/tree/mod.rs +++ b/crates/engine/tree/src/tree/mod.rs @@ -630,7 +630,16 @@ where ); task.set_invalid_block_hook(invalid_block_hook); let incoming = task.incoming_tx.clone(); - std::thread::Builder::new().name("Tree Task".to_string()).spawn(|| task.run()).unwrap(); + std::thread::Builder::new() + .name("Tree Task".to_string()) + .spawn(move || { + let runtime = + tokio::runtime::Builder::new_current_thread().enable_all().build().unwrap(); + runtime.block_on(async { + task.run(); + }); + }) + .unwrap(); (incoming, outgoing) } @@ -1203,8 +1212,11 @@ where EngineApiRequest::Beacon(request) => { match request { BeaconEngineMessage::ForkchoiceUpdated { state, payload_attrs, tx } => { + let start = Instant::now(); let mut output = self.on_forkchoice_updated(state, payload_attrs); + debug!("Forkchoice updated took {:?}", start.elapsed()); + let start = Instant::now(); if let Ok(res) = &mut output { // track last received forkchoice state self.state @@ -1220,12 +1232,15 @@ where // handle the event if any self.on_maybe_tree_event(res.event.take())?; } + debug!("Sending response to beacon1 took {:?}", start.elapsed()); + let start = Instant::now(); if let Err(err) = tx.send(output.map(|o| o.outcome).map_err(Into::into)) { error!("Failed to send event: {err:?}"); } + debug!("Sent response to beacon2 took {:?}", start.elapsed()); } BeaconEngineMessage::NewPayload { payload, cancun_fields, tx } => { let output = self.on_new_payload(payload, cancun_fields);