perf(storage): use delete_current when possible (#2909)

This commit is contained in:
Alexey Shekhirin
2023-05-30 12:52:07 +04:00
committed by GitHub
parent 50cfe96b95
commit 32772ca5dc
3 changed files with 4 additions and 4 deletions

View File

@@ -203,7 +203,7 @@ impl<DB: Database, D: BodyDownloader> Stage<DB> for BodyStage<D> {
}
// Delete the current body value
tx.delete::<tables::BlockBodyIndices>(number, None)?;
rev_walker.delete_current()?;
}
info!(target: "sync::stages::bodies", to_block = input.unwind_to, stage_progress = input.unwind_to, is_final_range = true, "Unwind iteration finished");

View File

@@ -292,7 +292,7 @@ impl<EF: ExecutorFactory, DB: Database> Stage<DB> for ExecutionStage<EF> {
break
}
// delete all changesets
tx.delete::<tables::AccountChangeSet>(block_num, None)?;
rev_acc_changeset_walker.delete_current()?;
}
let mut rev_storage_changeset_walker = storage_changeset.walk_back(None)?;
@@ -301,7 +301,7 @@ impl<EF: ExecutorFactory, DB: Database> Stage<DB> for ExecutionStage<EF> {
break
}
// delete all changesets
tx.delete::<tables::StorageChangeSet>(key, None)?;
rev_storage_changeset_walker.delete_current()?;
}
// Look up the start index for the transaction range

View File

@@ -212,7 +212,7 @@ where
if selector(entry_key.clone()) <= key {
break
}
self.delete::<T>(entry_key, None)?;
reverse_walker.delete_current()?;
deleted += 1;
}