diff --git a/crates/engine/tree/src/tree/payload_processor/sparse_trie.rs b/crates/engine/tree/src/tree/payload_processor/sparse_trie.rs index 70adbb6911..1d853abfb9 100644 --- a/crates/engine/tree/src/tree/payload_processor/sparse_trie.rs +++ b/crates/engine/tree/src/tree/payload_processor/sparse_trie.rs @@ -2,7 +2,7 @@ use crate::tree::payload_processor::multiproof::{MultiProofTaskMetrics, SparseTrieUpdate}; use alloy_primitives::B256; -use rayon::iter::{ParallelBridge, ParallelIterator}; +use rayon::iter::{IntoParallelIterator, ParallelIterator}; use reth_trie::{updates::TrieUpdates, Nibbles}; use reth_trie_parallel::root::ParallelStateRootError; use reth_trie_sparse::{ @@ -170,7 +170,8 @@ where .storages .into_iter() .map(|(address, storage)| (address, storage, trie.take_storage_trie(&address))) - .par_bridge() + .collect::>() + .into_par_iter() .map(|(address, storage, storage_trie)| { let _enter = debug_span!(target: "engine::tree::payload_processor::sparse_trie", parent: span.clone(), "storage trie", ?address) diff --git a/crates/trie/sparse/src/state.rs b/crates/trie/sparse/src/state.rs index f02c748430..b28d352162 100644 --- a/crates/trie/sparse/src/state.rs +++ b/crates/trie/sparse/src/state.rs @@ -274,7 +274,7 @@ where #[cfg(feature = "std")] // If std then reveal storage proofs in parallel { - use rayon::iter::{ParallelBridge, ParallelIterator}; + use rayon::iter::{IntoParallelIterator, ParallelIterator}; let retain_updates = self.retain_updates; @@ -288,7 +288,8 @@ where let trie = self.storage.take_or_create_trie(&account); (account, storage_subtree, revealed_nodes, trie) }) - .par_bridge() + .collect::>() + .into_par_iter() .map(|(account, storage_subtree, mut revealed_nodes, mut trie)| { let result = Self::reveal_decoded_storage_multiproof_inner( account,