Skip to content

Conversation

@AvhiMaz
Copy link

@AvhiMaz AvhiMaz commented Dec 14, 2025

Problem

Block IDs were not being persisted in snapshots, requiring unsafe fallback to Hash::default() when block_id was
missing after snapshot restoration.

Summary of Changes

  • Add block_id field to snapshot serialization/deserialization structures
  • Update ledger-tool to populate block_id for artificially created banks
  • Remove unsafe Hash::default() fallbacks, replace with explicit expects

Fixes #634

@AshwinSekar
Copy link
Contributor

Hey @AvhiMaz thanks for you interest. Please hold off for a moment, there's a procedure for snapshot format changes that will need to be followed in order to ensure backwards compatibility. Our snapshot experts will land this on agave master first.

The rest of this PR (ledger-tool and switching to hard unwraps) is valuable and can be landed afterwards. I will keep you posted on when we are ready.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

serialize / deserialize block id into snapshot

2 participants