Skip to content

Releases: erigontech/erigon

v3.0.0-beta1

21 Jan 11:17
0b94461
Compare
Choose a tag to compare
v3.0.0-beta1 Pre-release
Pre-release

Documentation: docs.erigon.tech
Blog: erigon.tech/news
X/Twitter: x.com/ErigonEth

Breaking changes

  • Bor chains: enable checkpoint sync by default (name: Astrid)
    • This uses the merkle data in Checkpoints & Milestines in the sync process rather than total difficulty.
    • The process should auto upgrade - in which case you may find that it starts creating new snapshots for checkpoints and milestones.
    • This may however fail, as there are a number of potential edge cases. If this happens the process will likely stop with a failure message.
    • In this situation you will need to do a clean sync, in which case the complete snapshot set will be downloaded and astrid will sync.
    • If you want to prevent this and retain the old behaviour start erigon with --polygon.sync=false
  • caplin.backfilling.blobs, caplin.backfilling and caplin.archive are now --caplin.states-archive --capin.blobs-archive --caplin.blocks-archive

Description of the change

Erigon3 changes from Erigon2

  • Initial sync doesn't re-exec from 0: downloading 99% LatestState and History
  • Per-Transaction granularity of history (Erigon2 had per-block). Means:
    • Can execute 1 historical transaction - without executing it's block
    • If account X change V1->V2->V1 within 1 block (different transactions): debug_getModifiedAccountsByNumber return
      it
    • Erigon3 doesn't store Logs (aka Receipts) - it always re-executing historical txn (but it's cheaper)
  • Validator mode: added. --internalcl is enabled by default. To disable use --externalcl.
  • Built-in Bor Consens: named Astrid. Enabled by default. To disable use --polygon.sync=false. Require re-sync.
  • --prune flags changed: see --prune.mode (default: full, archive: archive, EIP-4444: minimal)
  • Store most of data in immutable files (segments/snapshots):
    • can symlink/mount latest state to fast drive and history to cheap drive
    • chaindata is less than 15gb. It's ok to rm -rf chaindata. (to prevent grow: recommend --batchSize <= 1G)
  • Other changes:
    • ExecutionStage included many E2 stages: stage_hash_state, stage_trie, log_index, history_index, trace_index
    • Restart doesn't loose much partial progress: --sync.loop.block.limit=5_000 enabled by default

Require resync

  • no

Notes:

  • Starting with beta1 we're deprecating Caplin and Polygon support in Erigon 2

References:

Full Changelog: v3.0.0-alpha7...v3.0.0-beta1

v2.61.0

06 Jan 15:58
3ea0dd4
Compare
Choose a tag to compare

Description of the change

Improvements:

Full Changelog: v2.60.10...v2.61.0

v2.61.0-rc1

24 Dec 13:39
c0c67d1
Compare
Choose a tag to compare
v2.61.0-rc1 Pre-release
Pre-release

Description of the change

Improvements:

Full Changelog: v2.61.0-beta1...v2.61.0-rc1

v3.0.0-alpha7

18 Dec 16:11
34714c0
Compare
Choose a tag to compare
v3.0.0-alpha7 Pre-release
Pre-release

Description of the change

Improvements:

  • Faster eth_getTransactionReceipt by @JkLondon with "txn-granularity cache" in #13134 and "executing only 1 txn" #12424
  • Return PrunedError when trying to read unavailable historical data by @antonis19 in #13014

Bugfixes:

  • Fix trace_block returning "insufficient funds" (Issues #12525 and similar) with standalone rpcdaemon by @yperbasis in #13129

Full Changelog: v3.0.0-alpha6...v3.0.0-alpha7

v3.0.0-alpha6

11 Dec 12:16
f22317e
Compare
Choose a tag to compare
v3.0.0-alpha6 Pre-release
Pre-release

Breaking change

  • --prune.mode default is full. For compatibility with geth and other clients. Plz set explicit
    --prune.mode flag to your Erigon3 setups - to simplify future upgrade/downgrade.
  • Released binaries for Linux are now dynamically linked (Issues: #12570, #12556 )

Description of the change

New features:

Bugfixes:

  • eth_syncing works on Bor chains
  • support upper-bounds at: eth_accRange #12609 , erigon_getBalanceChangesInBlock #12642, debug_getModifiedAccountsByNumber #12634
  • eth_getLogs fix fee cap less than block #12640

Full Changelog: v3.0.0-alpha5...v3.0.0-alpha6

v2.61.0-beta1

20 Nov 17:32
9dc3435
Compare
Choose a tag to compare
v2.61.0-beta1 Pre-release
Pre-release

Description of the change

Improvements:

Full Changelog: v2.60.10...v2.61.0-beta1

v2.60.10

06 Nov 12:39
3afee08
Compare
Choose a tag to compare

Description of the change

Improvements:

Bugfixes:

  • Trace API: commit state changes from InitializeBlockExecution by @yperbasis in #12559. Prior to this PR in callManyTransactions (invoked by trace_block) changes made by InitializeBlockExecution were discarded. That was immaterial before since no much was happening at the beginning of a block. But that changed in Dencun with EIP-4788. Fixes Issues #11871, #12092, #12242, #12432, #12473, and #12525.

Full Changelog: v2.60.9...v2.60.10

v2.60.9

25 Oct 14:46
501a53b
Compare
Choose a tag to compare

Breaking change:

Release process:

  • Returned prefix "v" to git tag, docker tags. Reason: compatibility with Golang's rules (go.mod)
  • Switched to go 1.22 while building artifacts
  • Docker images now use "debian:12.7-slim" as a base image
  • From now onwards only the following three OS/Arch are supported: linux arm64, amd64(v1) and amd64v2
  • Artifacts for amd64 architecture are built and delivered with "silkworm" support (https://github.com/erigontech/silkworm)

Description of the change

Improvements:

Bugfixes:

  • Fixed Polygon OOM issue upon BadHeaders by @taratorio in #12405
  • Fixed RPC error when calling debug_traceTransaction with borTraceEnabled at particular blocks by @shohamc1 in #12315

Full Changelog: 2.60.8...v2.60.9

v3.0.0-alpha5

23 Oct 15:20
78f3647
Compare
Choose a tag to compare
v3.0.0-alpha5 Pre-release
Pre-release

Breaking changes:

  • Format of Merkle Tree was changed
  • Format and enumeration of Caplin's snapshots was changed

Improvements:

  • Faster time on the tip of the chain
  • Less time to download blobs needed
  • Fixed crashes introduced by alpha4.

Known problems

  • There is still some instability in the RPC

Require re-sync:

This release includes multiple breaking changes, and requires a full resync

Full Changelog: v3.0.0-alpha4...v3.0.0-alpha5

v3.0.0-alpha4

27 Sep 11:34
c0d9a2b
Compare
Choose a tag to compare
v3.0.0-alpha4 Pre-release
Pre-release

Breaking changes:

  • New defaults: --pporf.port=6060 --metrics.port=6061 --diagnostics.addr=localhost:6062. Reason: in Erigon2 these flags used the same port and did conflict.
  • Add prefix "v" to git tag, docker tags. Reason: compatibility with Golang's rules (go.mod).
  • drop support of golang 1.21

Require re-sync:

  • yes (if you need better performance on chain-tip)

Full Changelog: 3.0.0-alpha3...v3.0.0-alpha4