forked from anza-xyz/agave
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
ledger-tool: Get shreds from BigTable blocks (anza-xyz#1638)
There is often a desire to examine/replay/etc older blocks. If the blocks are recent enough, they can be pulled from an actively running node. Otherwise, the blocks must be pulled down from warehouse node archives. These archives are uploaded on a per-epoch basis so they are quite large, and can take multiple hours to download and decompress. With the addition of Entry data to BigTable, blocks can be recreated from BigTable data. Namely, we can recreate the Entries with proper PoH and transaction data. We can then shred them such that they are the same format as blocks that are produced from the cluster. This change introduces a new command that will read BigTable data and insert shreds into a local Blockstore. The new command is: $ agave-ledger-tool bigtable shreds ... Several important notes about the change: - Shred for some slot S will not be signed by the actual leader for slot S. Instead, shreds will be signed with a "dummy" keypair. The shred signatures does not affect the ability to replay the block. - Entry PoH data does not go back to genesis in BigTable. This data could be extracted and uploaded from the existing rocksdb archives; however, that work is not planned as far as I know. --allow-mock-poh can be passed to generate filler PoH data. Blocks created with this flag are replayable by passing --skip-poh-verify to ledger-tool. - A snapshot will be unpacked to determine items such as the shred version, tick hash rate and ticks per slot. This snapshot must be in the same epoch as the requested slots
- Loading branch information
1 parent
910dc9d
commit 7d46a96
Showing
1 changed file
with
296 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters