refactor(evm): set prune modes optionally for the batch executor (#9176)

This commit is contained in:
Alexey Shekhirin
2024-07-03 12:05:02 +01:00
committed by GitHub
parent 71041b06a8
commit 8e5204c119
9 changed files with 83 additions and 69 deletions

View File

@ -22,7 +22,6 @@ use reth_provider::{
BlockNumReader, BlockWriter, ChainSpecProvider, HeaderProvider, LatestStateProviderRef,
OriginalValuesKnown, ProviderError, ProviderFactory, StateWriter,
};
use reth_prune::PruneModes;
use reth_revm::database::StateProviderDatabase;
use reth_stages::{
stages::{AccountHashingStage, MerkleStage, StorageHashingStage},
@ -147,13 +146,12 @@ impl Command {
provider_rw.insert_block(sealed_block.clone())?;
td += sealed_block.difficulty;
let mut executor = executor_provider.batch_executor(
StateProviderDatabase::new(LatestStateProviderRef::new(
let mut executor = executor_provider.batch_executor(StateProviderDatabase::new(
LatestStateProviderRef::new(
provider_rw.tx_ref(),
provider_rw.static_file_provider().clone(),
)),
PruneModes::none(),
);
),
));
executor.execute_and_verify_one((&sealed_block.clone().unseal(), td).into())?;
executor.finalize().write_to_storage(
provider_rw.tx_ref(),