From 272bb9fee14a09d7fde3cddb3d439f2cdadb5493 Mon Sep 17 00:00:00 2001 From: Xiang Zhu Date: Tue, 11 Apr 2023 17:29:14 -0700 Subject: [PATCH] Clear the account paths before constructing a bank from a snapshot dir --- runtime/src/snapshot_utils.rs | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/runtime/src/snapshot_utils.rs b/runtime/src/snapshot_utils.rs index 97dd9a0c5a996c..36fa2f2647bb56 100644 --- a/runtime/src/snapshot_utils.rs +++ b/runtime/src/snapshot_utils.rs @@ -1666,6 +1666,12 @@ pub fn bank_from_snapshot_dir( accounts_update_notifier: Option, exit: &Arc, ) -> Result<(Bank, BankFromDirTimings)> { + // Clear the contents of the account paths run directories. When constructing the bank, the appendvec + // files will be extracted from the snapshot hardlink directories into these run/ directories. + for path in account_paths { + delete_contents_of_path(path); + } + let next_append_vec_id = Arc::new(AtomicAppendVecId::new(0)); let (storage, measure_build_storage) = measure!( @@ -5474,12 +5480,6 @@ mod tests { let bank_snapshot = get_highest_bank_snapshot(bank_snapshots_dir).unwrap(); let account_paths = &bank.rc.accounts.accounts_db.paths; - // Clear the contents of the account paths run directories. When constructing the bank, the appendvec - // files will be extracted from the snapshot hardlink directories into these run/ directories. - for path in account_paths { - delete_contents_of_path(path); - } - let (bank_constructed, ..) = bank_from_snapshot_dir( account_paths, &bank_snapshot, @@ -5546,11 +5546,6 @@ mod tests { } let account_paths = &bank.rc.accounts.accounts_db.paths; - // Clear the contents of the account paths run directories. When constructing the bank, the appendvec - // files will be extracted from the snapshot hardlink directories into these run/ directories. - for path in account_paths { - delete_contents_of_path(path); - } let deserialized_bank = bank_from_latest_snapshot_dir( bank_snapshots_dir,