Skip to content

v1.7.0

Choose a tag to compare

@zkCaleb-dev zkCaleb-dev released this 07 Sep 23:37
· 78 commits to main since this release
fecca53

Changed

  • Backfill walks now share their scans. Chunks sit on an absolute 2000-ledger grid, and contracts whose next chunk is the same range form a group whose ledgers are fetched and extracted once — each contract still commits its own rows and watermark atomically, so a failed commit isolates to its contract while the rest keep their progress; the trailing contract retries through a one-entry scan cache instead of re-downloading the range. A contract walking alone is a group of one and behaves as before. This is what makes registering many contracts at once affordable: N same-range registrations previously cost N copies of every RPC download. sierpe_backfill_chunks_total and sierpe_backfill_ledgers_scanned_total now count scans actually performed (once per shared chunk).

Fixed

  • The getLedgers batch shrink (1.5.1) had no memory: every call restarted at the full batch size and re-paid the aborted oversized downloads against the body cap, silently multiplying the bandwidth of a heavy-range walk roughly four times (found on the first mainnet homelab deployment: ~1.75 MB of meta per ledger near the tip). The client now remembers the batch size that fit and probes 25% higher only after every 8 successful batches.

Upgrade

Pull ghcr.io/zkcaleb-dev/sierpe:v1.7.0 (or v1.7.0-full). No migration, no API change. Railway template users: edit your service's image tag.