diff --git a/ledger/src/blockstore_processor.rs b/ledger/src/blockstore_processor.rs index 190f09d117..716162797e 100644 --- a/ledger/src/blockstore_processor.rs +++ b/ledger/src/blockstore_processor.rs @@ -1194,6 +1194,7 @@ fn load_frozen_forks( ) { info!("Taking snapshot of new root bank that has crossed the full snapshot interval! slot: {}", *root); *last_full_snapshot_slot = Some(*root); + new_root_bank.force_flush_accounts_cache(); new_root_bank.clean_accounts(true, true, *last_full_snapshot_slot); new_root_bank.update_accounts_hash_with_index_option( snapshot_config.accounts_hash_use_index, diff --git a/runtime/src/accounts_db.rs b/runtime/src/accounts_db.rs index c311d49098..0c78a1a2a9 100644 --- a/runtime/src/accounts_db.rs +++ b/runtime/src/accounts_db.rs @@ -2009,6 +2009,12 @@ impl AccountsDb { } else { let mut key_set = HashSet::new(); key_set.insert(*key); + assert!( + !account_info.is_cached(), + "The Accounts Cache must be flushed first for this account info. pubkey: {}, slot: {}", + *key, + *slot + ); let count = self .storage .slot_store_count(*slot, account_info.store_id)