mirror of
https://github.com/paradigmxyz/reth.git
synced 2026-04-30 03:01:58 -04:00
refactor: make sender recovery explicit in provider (#5776)
This commit is contained in:
@@ -195,7 +195,13 @@ impl Command {
|
||||
let provider_rw = factory.provider_rw()?;
|
||||
|
||||
// Insert block, state and hashes
|
||||
provider_rw.insert_block(block.clone(), None, None)?;
|
||||
provider_rw.insert_block(
|
||||
block
|
||||
.clone()
|
||||
.try_seal_with_senders()
|
||||
.map_err(|_| BlockValidationError::SenderRecoveryError)?,
|
||||
None,
|
||||
)?;
|
||||
block_state.write_to_db(provider_rw.tx_ref(), OriginalValuesKnown::No)?;
|
||||
let storage_lists = provider_rw.changed_storages_with_range(block.number..=block.number)?;
|
||||
let storages = provider_rw.plain_state_storages(storage_lists)?;
|
||||
|
||||
@@ -177,10 +177,10 @@ impl Command {
|
||||
Ok(senders) => senders,
|
||||
Err(err) => {
|
||||
warn!(target: "reth::cli", "Error sealing block with senders: {err:?}. Skipping...");
|
||||
continue
|
||||
continue;
|
||||
}
|
||||
};
|
||||
provider_rw.insert_block(sealed_block.block, Some(sealed_block.senders), None)?;
|
||||
provider_rw.insert_block(sealed_block, None)?;
|
||||
}
|
||||
|
||||
// Check if any of hashing or merkle stages aren't on the same block number as
|
||||
@@ -277,7 +277,7 @@ impl Command {
|
||||
let clean_result = merkle_stage.execute(&provider_rw, clean_input);
|
||||
assert!(clean_result.is_ok(), "Clean state root calculation failed");
|
||||
if clean_result.unwrap().done {
|
||||
break
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -343,7 +343,7 @@ impl Command {
|
||||
clean.1.nibbles.len() > self.skip_node_depth.unwrap_or_default()
|
||||
{
|
||||
first_mismatched_storage = Some((incremental, clean));
|
||||
break
|
||||
break;
|
||||
}
|
||||
}
|
||||
(Some(incremental), None) => {
|
||||
|
||||
Reference in New Issue
Block a user