8000 Releases · erigontech/erigon · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Releases: erigontech/erigon

v3.0.3 "Otterly Odyssey"

05 May 10:02
81d661f
Compare
Choose a tag to compare

Description of the change

RPC fixes:

Polygon users who have previously run migration steps to fix incorrect logIndex related to state sync transactions released in 3.0.2 are advised to run the migration steps again and add the --polygon.logindex flag to their flags for a complete mitigation.

Improvements:

Bugfixes:

Full Changelog: v3.0.2...v3.0.3

v3.0.2 "Otterly Odyssey"

18 Apr 11:52
cd28638
Compare
Choose a tag to compare

Description of the change

Gnosis users: this is a required update for the upcoming Pectra hardfork scheduled for 30 April 2025.

Ethereum mainnet users: it's recommended to use this release rather than v3.0.1 for the upcoming Pectra hardfork scheduled for 7 May 2025.

RPC fixes:

Previous versions of Erigon 3 have two bugs regarding handling of state sync events on Polygon chains:

  • Incorrect logIndex on all state sync transaction logs
  • Missing log events when using eth_getLogs with filters

A proper fix has been implemented and will be progressively rolled out in Erigon 3.1 and 3.2 (track issue here). A temporary workaround has been introduced if these issues are critical for your use-case. This requires regenerating receipts for all transactions on the chain. The procedure is as follows:

  1. Shutdown Erigon and all rpcdaemon processes
  2. Update binaries Erigon release
  3. erigon seg rm-state-snapshots --domain=receipt --datadir <your-datadir>
  4. integration stage_custom_trace --datadir <your-datadir> --chain <amoy|bor-mainnet> --bor.heimdall <heimdall-url>
    • For machines with many cores, you can add --exec.workers=<num> to improve performance (default is 7)
  5. Once complete, rm -rf <your-datadir>/chaindata
  6. Start Erigon

Improvements:

Bugfixes:

Full Changelog: v3.0.1...v3.0.2

v3.0.1 "Otterly Odyssey"

10 Apr 08:21
18e202d
Compare
Choose a tag to compare

Description of the change

Ethereum Mainnet users: it is recommended to use v3.0.2 rather than this release for the upcoming Pectra hardfork.
Pectra scheduled for May-07-2025

Sepolia/Holesky/Hoodi/Chiado users : It is recommended to use v3.0.2 rather than this release

Breaking changes:

  • drop golang 1.22 support

Improvements:

Bugfixes:

Full Changelog: v3.0.0...v3.0.1

v3.0.0

24 Mar 09:11
Compare
Choose a tag to compare

Note: This version has support for Hoodi testnet with --chain=hoodi

Upgrade from Erigon2

No. Please re-sync.

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.
    • To disable: --polygon.sync=false
  • caplin.backfilling.blobs, caplin.backfilling and caplin.archive are now --caplin.states-archive --capin.blobs-archive --caplin.blocks-archive

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
    • 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

Known problems

  • polygon: eth_getLogs if search by filters - doesn't return state-sync (state-sync events are not indexed yet). Without filter can see state-sync events. In eth_getReceipts also can see. Will release fixed files in E3.2
  • polygon: eth_getLogs state-sync events have incorrect index field. Will release fixed files in E3.2

E3 datadir structure

datadir        
    chaindata   # "Recently-updated Latest State" and "Recent History"
    snapshots   
        domain    # Latest State: link to fast disk
        history   # Historical values 
        idx       # InvertedIndices: can search/filtering/union/intersect them - to find historical data. like eth_getLogs or trace_transaction
        accessors # Additional (generated) indices of history - have "random-touch" read-pattern. They can serve only `Get` requests (no search/filters).
    temp # buffers to sort data >> RAM. sequential-buffered IO - is slow-disk-friendly
   
# There is 4 domains: account, storage, code, commitment 

E3 can store state on fast disk and history on cheap disk

If you can afford store datadir on 1 nvme-raid - great. If can't - it's possible to store history on cheap drive.

# place (or ln -s) `datadir` on slow disk. link some sub-folders to fast disk.
# Example: what need link to fast disk to speedup execution
datadir        
    chaindata   # link to fast disk
    snapshots   
        domain    # link to fast disk
        history   
        idx       
        accessors 
    temp   

# Example: how to speedup history access: 
#   - go step-by-step - first try store `accessors` on fast disk
#   - if speed is not good enough: `idx`
#   - if still not enough: `history` 

E3 datadir size

# eth-mainnet - archive - April 2024

du -hsc /erigon/* 
6G  	/erigon/caplin
50G 	/erigon/chaindata
1.8T	/erigon/snapshots
1.9T	total

du -hsc /erigon/snapshots/* 
100G 	/erigon/snapshots/accessor
240G	/erigon/snapshots/domain
260G	/erigon/snapshots/history
410G	/erigon/snapshots/idx
1.7T	/erigon/snapshots
# bor-mainnet - archive - Jun 2024

du -hsc /erigon/* 

160M	/erigon/bor
50G 	/erigon/chaindata
3.7T	/erigon/snapshots
3.8T	total

du -hsc /erigon/snapshots/* 
260G	/erigon-data/snapshots/accessor
850G	/erigon-data/snapshots/domain
650G	/erigon-data/snapshots/history
1.4T	/erigon-data/snapshots/idx
4.1T	/erigon/snapshots

See also: https://github.com/erigontech/erigon?tab=readme-ov-file#erigon3-users-guide

Full Changelog: v3.0.0-rc3...v3.0.0

v3.0.0-rc3

10 Mar 12:16
844c6cf
Compare
Choose a tag to compare
v3.0.0-rc3 Pre-release
Pre-release

Description of the change

Bugfixes:

Full Changelog: v3.0.0-rc2...v3.0.0-rc3

Known problems

  • polygon: eth_getLogs if search by filters - doesn't return state-sync (state-sync events are not indexed yet). Without filter can see state-sync events. In eth_getReceipts also can see. Will release fixed files in E3.1
  • polygon: eth_getLogs state-sync events have incorrect index field. Will release fixed files in E3.1

Full Changelog: v3.0.0-rc2...v3.0.0-rc3

v3.0.0-rc2

05 Mar 12:26
676cd33
Compare
Choose a tag to compare
v3.0.0-rc2 Pre-release
Pre-release

Description of the change

Mandatory for Sepolia & Chiado

Bugfixes:

Known problems

  • polygon: eth_getLogs if search by filters - doesn't return state-sync (state-sync events are not indexed yet). Without filter can see state-sync events. In eth_getReceipts also can see. Will release fixed files in E3.1
  • polygon: eth_getLogs state-sync events have incorrect index field. Will release fixed files in E3.1

Full Changelog: v3.0.0-rc1...v3.0.0-rc2

v2.61.3

05 Mar 13:07
7618196
Compare
Choose a tag to compare

Description of the change

Mandatory for Sepolia & Chiado

Bugfixes:

Full Changelog: v2.61.2...v2.61.3

v3.0.0-rc1

03 Mar 16:16
e3e858a
Compare
Choose a tag to compare
v3.0.0-rc1 Pre-release
Pre-release

Description of the change

Improvements:

  • Schedule Pectra for Chiado by @yperbasis in #13898
  • stagedsync: dbg option to log receipts on receipts hash mismatch (#13905) by @taratorio in #13940
  • Introduces a new method for estimating transaction gas that targets the maximum gas a contract could use (#13913). Fixes eth_estimateGas for historical blocks (#13903) by @somnathb1 in #13916

Bugfixes:

Known problems

  • polygon: eth_getLogs if search by filters - doesn't return state-sync (state-sync events are not indexed yet). Without filter can see state-sync events. In eth_getReceipts also can see. Will release fixed files in E3.1
  • polygon: eth_getLogs state-sync events have incorrect index field. Will release fixed files in E3.1

Full Changelog: v3.0.0-beta2...v3.0.0-rc1

v2.61.2

27 Feb 18:44
3df01fa
Compare
Choose a tag to compare

Description of the change

Improvements:

Bugfixes:

Full Changelog: v2.61.1...v2.61.2

v3.0.0-beta2

18 Feb 12:09
9da58c0
Compare
Choose a tag to compare
v3.0.0-beta2 Pre-release
Pre-release

Breaking changes

  • Reverts Optimize gas by default in eth_createAccessList #8337

Description of the change

Improvements:

  • Up to date implementation of Pectra and schedules hard fork for Holešky and Sepolia
  • eth_estimateGas: StateOverrides and HistoricalBlocks support
  • fixes a number of issues on Polygon with the new default flow (Astrid)
    • nonsequential block in bridge processing - should be fixed
    • pos sync failed: fork choice update failure: status=5, validationErr='' - should be fixed
    • external rpc daemon getting stuck - should be fixed
    • process not exiting in a clean way (getting stuck) upon astrid errs - should be fixed
    • very rare chance of bridge deadlock while at chain tip due to forking - should be fixed

Require resync

  • yes

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

0