diff --git a/core/src/validator.rs b/core/src/validator.rs index 84a2c77eb..4c138b854 100644 --- a/core/src/validator.rs +++ b/core/src/validator.rs @@ -1693,8 +1693,6 @@ fn maybe_warp_slot( accounts_background_request_sender: &AbsRequestSender, ) -> Result<(), String> { if let Some(warp_slot) = config.warp_slot { - process_blockstore.process()?; - let mut bank_forks = bank_forks.write().unwrap(); let working_bank = bank_forks.working_bank(); @@ -1750,6 +1748,11 @@ fn maybe_warp_slot( "created snapshot: {}", full_snapshot_archive_info.path().display() ); + + drop(bank_forks); + // Process blockstore after warping bank forks to make sure tower and + // bank forks are in sync. + process_blockstore.process()?; } Ok(()) }