mirror of
https://github.com/hl-archive-node/nanoreth.git
synced 2025-12-06 10:59:55 +00:00
fix: save last finalized block (#8473)
Co-authored-by: Roman Krasiuk <rokrassyuk@gmail.com>
This commit is contained in:
@ -8,10 +8,10 @@ use reth_db_api::database::Database;
|
||||
use reth_downloaders::{bodies::noop::NoopBodiesDownloader, headers::noop::NoopHeaderDownloader};
|
||||
use reth_exex::ExExManagerHandle;
|
||||
use reth_node_core::args::NetworkArgs;
|
||||
use reth_primitives::{BlockHashOrNumber, PruneModes, B256};
|
||||
use reth_primitives::{BlockHashOrNumber, BlockNumber, PruneModes, B256};
|
||||
use reth_provider::{
|
||||
BlockExecutionWriter, BlockNumReader, ChainSpecProvider, HeaderSyncMode, ProviderFactory,
|
||||
StaticFileProviderFactory,
|
||||
BlockExecutionWriter, BlockNumReader, ChainSpecProvider, FinalizedBlockReader,
|
||||
FinalizedBlockWriter, HeaderSyncMode, ProviderFactory, StaticFileProviderFactory,
|
||||
};
|
||||
use reth_stages::{
|
||||
sets::DefaultStages,
|
||||
@ -75,6 +75,14 @@ impl Command {
|
||||
.take_block_and_execution_range(range.clone())
|
||||
.map_err(|err| eyre::eyre!("Transaction error on unwind: {err}"))?;
|
||||
|
||||
// update finalized block if needed
|
||||
let last_saved_finalized_block_number = provider.last_finalized_block_number()?;
|
||||
let range_min =
|
||||
range.clone().min().ok_or(eyre::eyre!("Could not fetch lower range end"))?;
|
||||
if range_min < last_saved_finalized_block_number {
|
||||
provider.save_finalized_block_number(BlockNumber::from(range_min))?;
|
||||
}
|
||||
|
||||
provider.commit()?;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user