Skip to content

Commit

Permalink
v1.17: Fix non-determinism in account_hash_ignore_slot on genesis (ba…
Browse files Browse the repository at this point in the history
…ckport of #33692) (#33720)

Fix non-determinism in account_hash_ignore_slot on genesis (#33692)

(cherry picked from commit 69495f4)

Co-authored-by: Jeff Washington (jwash) <jeff.washington@solana.com>
  • Loading branch information
mergify[bot] and jeffwashington authored Oct 19, 2023
1 parent ab99086 commit e76dd77
Showing 1 changed file with 10 additions and 0 deletions.
10 changes: 10 additions & 0 deletions runtime/src/bank.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3841,6 +3841,16 @@ impl Bank {
// Bootstrap validator collects fees until `new_from_parent` is called.
self.fee_rate_governor = genesis_config.fee_rate_governor.clone();

// Make sure to activate the account_hash_ignore_slot feature
// before calculating any account hashes.
if genesis_config
.accounts
.iter()
.any(|(pubkey, _)| pubkey == &feature_set::account_hash_ignore_slot::id())
{
self.activate_feature(&feature_set::account_hash_ignore_slot::id());
}

for (pubkey, account) in genesis_config.accounts.iter() {
assert!(
self.get_account(pubkey).is_none(),
Expand Down

0 comments on commit e76dd77

Please sign in to comment.