Adds cli interface to allow reseting chain to a particular block (#9782)
* added BlockChainReset trait, client impl, and cli interface * show block hashes to be deleted and new best block, update best block in db, better cli interface * delete BlockNumber from COL_EXTRA * add TODO comment * add BlockReciepts to imports * refactor block_headers_from_best_block, better cli documentation * exit gracefully if reset arg isn't supplied * fix cli usage macro * removed stray int literals * use Vec::with_capacity Co-Authored-By: seunlanlege <seunlanlege@gmail.com> * cast n to usize * correct imports * make db reset arg required
This commit is contained in:
committed by
Afri Schoedon
parent
1df6361753
commit
cdba22a2cb
@@ -48,7 +48,7 @@ use ethcore_private_tx::{ProviderConfig, EncryptorConfig};
|
||||
use secretstore::{NodeSecretKey, Configuration as SecretStoreConfiguration, ContractAddress as SecretStoreContractAddress};
|
||||
use updater::{UpdatePolicy, UpdateFilter, ReleaseTrack};
|
||||
use run::RunCmd;
|
||||
use blockchain::{BlockchainCmd, ImportBlockchain, ExportBlockchain, KillBlockchain, ExportState, DataFormat};
|
||||
use blockchain::{BlockchainCmd, ImportBlockchain, ExportBlockchain, KillBlockchain, ExportState, DataFormat, ResetBlockchain};
|
||||
use export_hardcoded_sync::ExportHsyncCmd;
|
||||
use presale::ImportWallet;
|
||||
use account::{AccountCmd, NewAccount, ListAccounts, ImportAccounts, ImportFromGethAccounts};
|
||||
@@ -176,6 +176,19 @@ impl Configuration {
|
||||
}
|
||||
} else if self.args.cmd_tools && self.args.cmd_tools_hash {
|
||||
Cmd::Hash(self.args.arg_tools_hash_file)
|
||||
} else if self.args.cmd_db && self.args.cmd_db_reset {
|
||||
Cmd::Blockchain(BlockchainCmd::Reset(ResetBlockchain {
|
||||
dirs,
|
||||
spec,
|
||||
pruning,
|
||||
pruning_history,
|
||||
pruning_memory: self.args.arg_pruning_memory,
|
||||
tracing,
|
||||
fat_db,
|
||||
compaction,
|
||||
cache_config,
|
||||
num: self.args.arg_db_reset_num,
|
||||
}))
|
||||
} else if self.args.cmd_db && self.args.cmd_db_kill {
|
||||
Cmd::Blockchain(BlockchainCmd::Kill(KillBlockchain {
|
||||
spec: spec,
|
||||
|
||||
Reference in New Issue
Block a user