Releases: erigontech/erigon
v3.4.0-rc.5
Erigon v3.4.0-rc.5
Key Features
- Fast restart on ChainTip: no more blocking indexing or pruning at startup; Caplin doesn't lose its download progress.
- 4x smaller Chaindata (~20 GB): improves ChainTip speed. Available via re-sync, or by running
./build/bin/erigon seg step-rebase --datadir=<your_path> --new-step-size=390625(takes ~10 seconds). - Historical
eth_getProof: is no longer experimental. Recommended: 32 GB+ RAM. Re-sync with--prune.include-commitment-historyto apply the latest data fixes. - New RPC endpoints:
trace_rawTransaction,eth_getStorageValues,admin_addTrustedPeer,admin_removeTrustedPeer, flat tracers,engine_getBlobsV3. - Reduced impact on ChainTip performance: from RPC, background file merging, pruning, and optional heavy flags (
--persist.receipts,--prune.include-commitment-history).
Breaking Changes
- Minimum Go version: 1.25
--rpc.blockrange.limit=1_000new limit.Maximum block range (end - begin) allowed for range queries over RPC. 0 - means unlimited. Default: 1_000--rpc.logs.maxresults=20_000new limit.Maximum number of logs returned by eth_getLogs, erigon_getLogs, erigon_getLatestLogs. 0 - means unlimited. Default: 20_000--rpc.max.concurrency=0new limit.Maximum number of concurrent HTTP RPC requests (HTTP admission control). 0 = use db.read.concurrency, -1 = unlimited (no admission control). Default: 0p2p: switched todiscv5.discv4disabled by default.
How to Upgrade
Erigon 3.4 is a drop-in upgrade. No data migration or re-sync is required.
Docker
docker pull erigontech/erigon:v3.4.0-rc.5Changes
RPC Reliability
eth_getBlockReceipts: limit over-concurrency — prevents latency growth and out-of-memory (OOM) at high request rates. (#19725)debug_traceCallMany: fix globalBlockOverridesandStateOverridesnot being applied. (#19547)debug_traceCall: fix state and block overrides interaction. (#18480)eth_blobBaseFee: fix incorrect value returned. (#18506)eth_getBalanceand others: fix block-not-found error for certain historical queries. (#18457)- Block-hash canonicality check: added to APIs that accept a block hash and state. (#19356)
rpc: fix batch limit exceeded error to comply with the JSON-RPC spec. (#18260)trace_replayTransaction(): add stack info forTLOADopcode. (#19550)eth_feeHistory: performance optimisation and pending block support. (#19526, #19455)
New RPC Endpoints
trace_rawTransaction: execute and trace a raw signed transaction without broadcasting it. (#19524)eth_getStorageValues: batch fetch of multiple storage slots in a single call. (#19442)admin_addTrustedPeer/admin_removeTrustedPeer: manage trusted peers at runtime. (#19413)- Call flat tracers (
trace_callfamily): flat trace output format support. (#18556) engine_getBlobsV3: Engine API blob retrieval v3. (#18512)trace_call:StateOverridesprecompile support. (#18401, #18492)
TxPool
- Zombie queued transactions: transactions exceeding
MaxNonceGapare now evicted. (#19449) txnprovider/shutter: fix premature encrypted txn pool cleanup and peer drops. (#18351)txpool: cachependingBaseFeefor queue comparisons to reduce recomputation. (#18341)
Protocol
- Fusaka scheduled for Chiado (Gnosis Chain testnet) at slot 21 651 456, epoch 1 353 216, timestamp 1 773 653 580 (Mon 16 Mar 2026 09:33:00 UTC). (#19682)
- Chiado bootstrap nodes updated to match the Lighthouse built-in Chiado network config. (#19693)
- Balancer hard fork for Gnosis Chain mainnet. (#18122)
- Amsterdam signer support and BAL non-determinism fix. (#19434)
- BAL selfdestruct net-zero fix. (#19528)
- Parallel execution fixes for block-access-list (BAL) workloads. (#17319)
execution/vm: EIP-8024 (SWAPN,DUPN,EXCHANGE) opcodes implemented. (#18670)
Consensus Layer (Caplin)
- Persistent historical download — Caplin now persists and resumes historical beacon block downloads across restarts. (#18320)
- Discovery v5 enabled by default —
discv5is now the default peer discovery protocol. (#18578) cl/p2p,cl/sentinel: fix DISCV5 ENR missing IP when the discovery address is unspecified. (#19585)- Fix missing attestations by using GossipSub for subnet peer coverage. (#19523)
cl/beacon: addsingle_attestationevent topic support. (#18142)cl/beacon: setEth-Consensus-Versionheader when versioned. (#18377)
P2P
p2p/sentry: fix wrong OR in case statement forwitprotocol messages. (#19580)p2p: better handling of RLP errors inwit. (#19569)discv4disabled by default on mainnet (discv5 preferred). (#18640)
Snapshot & Storage
merge: prioritize Domain merge over History — 2x less disk space required, and less impact to ChainTip from history-merge. (#19441)merge: fix O(n²) InvertedIndex re-merge — eliminates quadratic time complexity during re-merge. (#19680)SequenceBuilder: avoids an intermediate Elias-Fano representation during sequence building and merge. (#19552, #19567)- Faster startup: state-file index building deferred to reduce restart latency. (#19583, #19407)
Changelog
v3.4.0-rc.4
3.4.0
Key features
- Fast restart on ChainTip: no more blocking indexing or prune at startup, Caplin doesn't loose it's downloading progress.
- 4x smaller Chaindata (~20gb): it improving ChainTip speed. You will get it only by re-sync, or by manual run of command
./build/bin/erigon seg step-rebase --datadir=<your_path> --new-step-size=390625(it will take 10seconds) - Historical eth_getProof: is not "experimental" now. We advise
+32G RAMfor this feature. Re-sync with--prune.include-commitment-historyto get latest data-fixes. - New RPC endpoints:
trace_rawTransaction,eth_getStorageValues,admin_addTrustedPeer,admin_removeTrustedPeer, call flat tracers,engine_getBlobsV3. - Reduce impact to ChainTip perf: from RPC, from background Files-Merge, from pruning, from optional heavy-flags (--persist.receipts and --prune.include-commitment-history), etc...
Breaking changes
- Minimum Golang: 1.25
--rpc.blockrange.limit=1_000new limit.Maximum block range (end - begin) allowed for range queries over RPC. 0 - means unlimited. Default: 1_000--rpc.logs.maxresults=20_000new limit.Maximum number of logs returned by eth_getLogs, erigon_getLogs, erigon_getLatestLogs. 0 - means unlimited. Default: 20_000--rpc.max.concurrency=0new limit.Maximum number of concurrent HTTP RPC requests (HTTP admission control). 0 = use db.read.concurrency, -1 = unlimited (no admission control). Default: 0p2p: switched todiscv5.discv4disabled by default.
How to upgrade
Erigon 3.4 is a drop-in upgrade. No data migration or re-sync is required.
RPC Reliability
eth_getBlockReceipts: limit over-concurrency — prevents latency growth and OOM at high request rates. (#19725)debug_traceCallMany: fix globalBlockOverridesandStateOverridesnot being applied. (#19547)debug_traceCall: fix state and block overrides interaction. (#18480)eth_blobBaseFee: fix incorrect value returned. (#18506)eth_getBalanceand others: fix block-not-found error for certain historical queries. (#18457)- Block-hash canonicality check in APIs that accept a hash and state. (#19356)
rpc: fix batch limit exceeded errorto comply with JSONRPC spec. (#18260)trace_replayTransaction(): add stack info forTLOADopcode. (#19550)eth_feeHistory: performance optimisation and pending block support. (#19526, #19455)
New RPC Endpoints
trace_rawTransaction: execute and trace a raw signed transaction without broadcasting it. (#19524)eth_getStorageValues: batch fetch of multiple storage slots in a single call. (#19442)admin_addTrustedPeer/admin_removeTrustedPeer: manage trusted peers at runtime. (#19413)- Call flat tracers (
trace_callfamily): flat trace output format support. (#18556) engine_getBlobsV3: Engine API blob retrieval v3. (#18512)trace_call:StateOverridesprecompile support. (#18401, #18492)
TxPool
- Fix zombie queued transactions exceeding
MaxNonceGapare now evicted. (#19449) txnprovider/shutter: fix premature encrypted txn pool cleanup and peer drops. (#18351)txpool: cachependingBaseFeefor queue comparisons to reduce recomputation. (#18341)
Protocol
- Fusaka scheduled for Chiado (Gnosis Chain testnet) at slot 21 651 456, epoch 1 353 216, timestamp 1 773 653 580 (Mon 16 Mar 2026 09:33:00 UTC). (#19682)
- Chiado bootstrap nodes updated to match the Lighthouse built-in Chiado network config. (#19693)
- Balancer hard fork for Gnosis Chain mainnet. (#18122)
- Amsterdam signer support and BAL non-determinism fix. (#19434)
- BAL selfdestruct net-zero fix. (#19528)
- Parallel execution fixes for block-access-list (BAL) workloads. (#17319)
execution/vm: EIP-8024 (SWAPN,DUPN,EXCHANGE) opcodes implemented. (#18670)
Consensus Layer (Caplin)
- Persistent historical download — Caplin now persists and resumes historical beacon block downloads across restarts. (#18320)
- Discovery v5 enabled by default —
discv5is now the default peer discovery protocol. (#18578) cl/p2p,cl/sentinel: fix DISCV5 ENR missing IP when the discovery address is unspecified. (#19585)- Fix missing attestations by using GossipSub for subnet peer coverage. (#19523)
cl/beacon: addsingle_attestationevent topic support. (#18142)cl/beacon: setEth-Consensus-Versionheader when versioned. (#18377)
P2P
p2p/sentry: fix wrong OR in case statement forwitprotocol messages. (#19580)p2p: better handling of RLP errors inwit. (#19569)discv4disabled by default on mainnet (discv5 preferred). (#18640)
Snapshot & Storage
merge: prioritize Domain merge over History — 2x less disk-space required. And less impact to ChainTip by history-merge: (#19441)merge: fix O(n²) InvertedIndex re-merge — (#19680)SequenceBuilder: avoids an intermediate Elias-Fano representation during sequence building and merge. (#19552, #19567)- Faster startup: state-file index building deferred to reduce restart latency. (#19583, #19407)
Changelog
v3.3.10 - Rocky Romp
This release schedules Fusaka on Gnosis Chain mainnet at Tue 14 April 2026, 12:06:20 UTC and thus is mandatory for all Gnosis users. It is also recommended for all users in general.
What's Changed
- Shedule Gnosis Fusaka by @domiwei in #20090
- txpool: fully discard pre-Osaka blob txns in best() by @yperbasis in #20120
- rpc: auto-convert legacy blob sidecar to v1 cell proofs after Osaka by @domiwei
in #20087 - rpc: add blockRangeLimit param for API works on blocks range by @lupin012 in #19614
- cl: fall back to local head state when remote checkpoint sync fails by @domiwei in #20003
- cl: fix fork choice block validation and error propagation by @domiwei in #19927
- cl: re-enable voluntary_exit gossip topic subscription by @Giulio2002 in #19764
Full Changelog: v3.3.9...v3.3.10
v3.3.9 - Rocky Romp
This release schedules Fusaka on Chiado on Mon 16 March 2026, 09:33:00 UTC and thus is mandatory for all Chiado users.
What's Changed
- fix(txpool): evict zombie queued txns exceeding MaxNonceGap (cherry-pick #19449 → release/3.3) by @Giulio2002 in #19591
- cl/sentinel: fix DISCV5 ENR missing IP when discovery address is unspecified. by @lystopad in #19647
- rpc: accept only canonical hash for block receipts by @canepat in #19649
- Schedule Fusaka for Chiado by @yperbasis in #19681
- cl: amend Chiado bootstrap nodes by @yperbasis in #19692
Full Changelog: v3.3.8...v3.3.9
v3.3.8 - Rocky Romp
What's Changed
- New Chiado boot nodes (cherry-pick #18867) by @sudeepdino008 in #19241
- eth_getLogs: receipts availability check to be aware about
--persist.receiptsand--prune.mode=minimalby @AskAlexSharov in #19226 - txnprovider/shutter: fix decryption keys processing when keys do not follow txnIndex order (#18951) by @taratorio in #18959
- execution: fix Chiado re-exec from genesis by @yperbasis in #18887
Bugfixes
- execution/tests: minor fix chainmaker add withdrawals in shanghai by @taratorio in #18886
- Reduce impact of background merge/compress to ChainTip by @AskAlexSharov in #18995
- fix(caplin): Fixes for DataColumnSidecar (#18268) by @taratorio in #19003
- rpc: bound checks in receipts cache V2 and generator by @canepat in #19046
- execution/execmodule: fix unwinding logic when side forks go back in height (#18993) by @taratorio in #19063
- p2p: fix nil pointer crash with --nodiscover by @sudeepdino008 in #19056
- rpc: add check on latest executed block by @canepat in #19133
- protect History from events duplication by @AskAlexSharov in #19230
Full Changelog: v3.3.7...v3.3.8
v3.3.7 - Rocky Romp
P2P stability. Prune performance.
What's Changed
- prune: remove early-exit based on DirtySpace() by @AskAlexSharov in #18787
- execution: fix commitment state key txNum when last block tx is at step boundary by @taratorio in #18858
- p2p deadlock fix by @Copilot in #18862
- Forward compatibility: Fixed index building for v0 snapshot format by @eastorski in #18824
- Backward compatibility: Add --v5disc alias by @anacrolix in #18785
- Show the default P2P discovery bools in --help by @anacrolix in #18819
Full Changelog: v3.3.4...v3.3.7
v3.3.4 - Rocky Romp
v3.3.4 is a bugfix release recommended for all users.
What's Changed
- Fix for missing rcache at stepBoundary by @sudeepdino008 in #18698
- Execution/stagedsync: port --experimental.always-generate-changesets flag for gas repricing benchmarks by @taratorio in #18733
- Execution: add --fcu.timeout and --fcu.background.prune flags by @taratorio in #18723
- Not needed collector erased in prune domains by @JkLondon in #18665
- Forward compatible snapshots format by @eastorski in #18746
Full Changelog: v3.3.3...v3.3.4
v3.3.3 - Rocky Romp
v3.3.3 is a bugfix release recommended for all users.
Fixes
- CL: Fix incorrect committee count in process_attestation in #18316 by @domiwei
- CL: Fix for periodic retry of not-ready response in #18376 by @taratorio
- Shutter: fix premature encrypted txn pool cleanup bug and peer drops in #18264 by @taratorio
- Half block exec fix in receipts in #18426, #18505 by @sudeepdino008
- p2p: resolve security vulnerability in #18650 by @yperbasis
Improvements
- p2p: Turn on discovery v5 by default in #18639 by @anacrolix
Full Changelog: v3.3.2...v3.3.3
v3.3.2 - Rocky Romp
Gnosis hardfork support
- rpc: fix panic on
GetEthV1BeaconBlobs(#17992) by @domiwei in #18232 - rpc: fix invalid key error code in
eth_getStorageAtby @canepat in #18238 - cl/beacon: add single_attestation event topic support (#18142) by @domiwei in #18277
- Gnosis Balancer by @mh0lt in #18282
- bittorrent: torrent excessive wantPeers event fix by @anacrolix in #18256
Full Changelog: v3.3.1...v3.3.2
v3.3.1 - Rocky Romp
- We have new Docs and HelpCenter: https://docs.erigon.tech/
- Support of historical
eth_getProof(#12984). It requires
--prune.include-commitment-historyflag.
RPC
CL
TxPool
- txpool: remove double PopWorst() in pending pool overflow by @AskAlexSharov in #18159
Sync
- Torrent client fixes by @anacrolix in #18179
Full Changelog: v3.3.0...v3.3.1