mirror of
https://github.com/hl-archive-node/nanoreth.git
synced 2025-12-06 10:59:55 +00:00
fix(bin): calculate ETA only if EntitiesCheckpoint is present (#3206)
This commit is contained in:
@ -217,48 +217,33 @@ impl StageCheckpoint {
|
||||
self
|
||||
}
|
||||
|
||||
/// Get the underlying [`EntitiesCheckpoint`] to determine the number of entities processed, and
|
||||
/// the number of total entities to process.
|
||||
pub fn entities(&self) -> EntitiesCheckpoint {
|
||||
match self.stage_checkpoint {
|
||||
Some(
|
||||
StageUnitCheckpoint::Account(AccountHashingCheckpoint {
|
||||
progress: entities, ..
|
||||
}) |
|
||||
StageUnitCheckpoint::Storage(StorageHashingCheckpoint {
|
||||
progress: entities, ..
|
||||
}) |
|
||||
StageUnitCheckpoint::Entities(entities) |
|
||||
StageUnitCheckpoint::Execution(ExecutionCheckpoint { progress: entities, .. }) |
|
||||
StageUnitCheckpoint::Headers(HeadersCheckpoint { progress: entities, .. }) |
|
||||
StageUnitCheckpoint::IndexHistory(IndexHistoryCheckpoint {
|
||||
progress: entities,
|
||||
..
|
||||
}),
|
||||
) => entities,
|
||||
None => EntitiesCheckpoint::default(),
|
||||
/// Get the underlying [`EntitiesCheckpoint`], if any, to determine the number of entities
|
||||
/// processed, and the number of total entities to process.
|
||||
pub fn entities(&self) -> Option<EntitiesCheckpoint> {
|
||||
let Some(stage_checkpoint) = self.stage_checkpoint else { return None };
|
||||
|
||||
match stage_checkpoint {
|
||||
StageUnitCheckpoint::Account(AccountHashingCheckpoint {
|
||||
progress: entities, ..
|
||||
}) |
|
||||
StageUnitCheckpoint::Storage(StorageHashingCheckpoint {
|
||||
progress: entities, ..
|
||||
}) |
|
||||
StageUnitCheckpoint::Entities(entities) |
|
||||
StageUnitCheckpoint::Execution(ExecutionCheckpoint { progress: entities, .. }) |
|
||||
StageUnitCheckpoint::Headers(HeadersCheckpoint { progress: entities, .. }) |
|
||||
StageUnitCheckpoint::IndexHistory(IndexHistoryCheckpoint {
|
||||
progress: entities,
|
||||
..
|
||||
}) => Some(entities),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl Display for StageCheckpoint {
|
||||
fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result {
|
||||
match self.stage_checkpoint {
|
||||
Some(
|
||||
StageUnitCheckpoint::Account(AccountHashingCheckpoint {
|
||||
progress: entities, ..
|
||||
}) |
|
||||
StageUnitCheckpoint::Storage(StorageHashingCheckpoint {
|
||||
progress: entities, ..
|
||||
}) |
|
||||
StageUnitCheckpoint::Entities(entities) |
|
||||
StageUnitCheckpoint::Execution(ExecutionCheckpoint { progress: entities, .. }) |
|
||||
StageUnitCheckpoint::Headers(HeadersCheckpoint { progress: entities, .. }) |
|
||||
StageUnitCheckpoint::IndexHistory(IndexHistoryCheckpoint {
|
||||
progress: entities,
|
||||
..
|
||||
}),
|
||||
) => entities.fmt(f),
|
||||
match self.entities() {
|
||||
Some(entities) => entities.fmt(f),
|
||||
None => write!(f, "{}", self.block_number),
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user