Skip to content
LogoLogo

Snapshots

Start a node from a recent chain-state snapshot instead of verifying every block since genesis. Background: Snapshots & state commitment.

Export

On a synced node, stop it first (the database is exclusive), then:

arrekta-node-rs snapshot export snap.arrks

Import

Into an empty data directory, then start the node normally:

ARREKTA_NETWORK=regtest ARREKTA_DATA_DIR=./fresh arrekta-node-rs snapshot import snap.arrks
ARREKTA_NETWORK=regtest ARREKTA_DATA_DIR=./fresh arrekta-node-rs

Files are interchangeable between the two implementations.

What import checks

  • every header's proof of work, links, bits and median time;
  • the rebuilt LtHash against the commitment recorded for the snapshot height H;
  • it then sets a finality floor at H (there is no undo data below it).

The snapshot is proven once the node connects block H + delay (100 on mainnet and testnet, 10 on regtest): that block must commit to the state after H, so a forged snapshot is rejected there (bad-cb-utxo).

Distribution

Snapshots carry a checksum, but treat their source like any download. Consensus rejects a forged one at H + delay, which costs the node a re-sync, not funds.