Skip to content

Releases: erigontech/erigon

2021.07.05-alpha

29 Jul 08:51
Compare
Choose a tag to compare

XDG in the Docker images

🚨 This is a breaking change if you use our Docker images.

It moves the default data dir from /var/lib/erigon to /home/erigon/.local/share/erigon.

If you mount your data and use our own docker images, you need to change the mount point to avoid re-syncing!

If you already setup your data dir to a custom directory -- no action is required.

If you don't use our docker images -- no action is required.

Changelog

  • fixes for EIP-1559 in pending transactions, eth_getTransactionByHash,

  • fix for debug_traceTransaction #2433

  • fixes for intrinsic gas in trace_ methods #2440

  • fixup for eth_syncing on the block 0

  • fixes for trace_call and trace_callMany methods

  • Sokol support improvements

  • Breaking change: Docker builds now follow XDG spec (data in /home/erigon/.local/share/erigon) #2437

SHA256

reproducible builds in Docker aren't functional at the moment

2021.07.04-alpha

22 Jul 16:04
026c4e9
Compare
Choose a tag to compare

London Hardfork & Ropsten Consensus Issue

Please upgrade your nodes to 2021.07.04 before London hardfork!
Recently uncovered consensus bug in geth, nethermind and erigon affects mainnet too!
This bug is fixed in this (2021.07.04) release.

If you want to repair your Ropsten nodes without resync

If you are on mainnet, no need to repair anything.

Follow these steps accurately:

  • upgrade to 2021.07.04

  • run your node with --bad.block 10679538 option

  • wait patiently for the node to unwind, find proper peers and re-sync from the bad block. can take quite some time and might look like it is stuck on [4/18 Bodies] Wrote block bodies

  • restart your node WITHOUT --bad.block option.

Pruning

New flag --prunereplaces --storage-mode.

--prune is an INVERSION of --storage-mode

Examples:

  • --storage-mode=h => "keep history";
  • --prune=h means "PRUNE history".
  • if you using --storage-mode=ht the equivalent is --prune=rc

New flag docs:

  • h - prune history (ChangeSets, HistoryIndices - used by historical state access)
  • r - prune receipts (Receipts, Logs, LogTopicIndex, LogAddressIndex - used by eth_getLogs and similar RPC methods)
  • t - prune transaction by it's hash index
  • c - prune call traces (used by trace_* methods)

By default, --prune deletes data older than 90K blocks from the tip of the chain (aka, for if tip block is no. 12'000'000, only the data between 11'910'000-12'000'000 will be kept).

Thus could be overridden by --prune.<mode>.older flags.
E.g. --prune.h.older=1000000 keeps the last 1'000'000 historical entries.

--prune= (empty list) means no pruning (full archive mode).

Breaking change in Dockerfile - user is not Root anymore

Please see changes here: https://github.com/ledgerwatch/erigon/pull/2397/files

Changelog

  • pruning! (see #2399)

  • default docker-compose now can do RPCDaemon in local-mode in another container. PR #2392 (kudos to https://github.com/mariuspod for the fixup!)

  • no annoying "peer not found" error

  • a fixup for Ropsten consensus issue (see the PR here)

  • fixes in trace_replayTransaction, trace_replayBlock

  • broadcast local pooled transactions

  • remove preimage recording

  • batches in streamable RPC requests

  • improvements for Sokol

SHA256

reproducible builds in Docker aren't functional at the moment

2021.07.03-alpha

14 Jul 14:28
36ae9ec
Compare
Choose a tag to compare

DockerHub image

  • thorax/erigon
  • docker-compose changed name of image from turbo-geth to thorax/erigon
  • Inside docker changed datadir to /var/lib/erigon

Changelog

  • eth_syncing -- show progress stage by stage

  • remove ETL tmp files more aggressive

  • continue work on Sokol network support - we need it to build more flexible consensus API

  • improvements for tx pool propagation

  • EIP-1559 support in eth_call and trace_* APIs

  • include London blocks in the configuration

  • workaround for hitting gRPC limits for the txpool_content call

SHA256

reproducible builds in Docker aren't functional at the moment

2021.07.02-alpha

08 Jul 11:09
95ab850
Compare
Choose a tag to compare

Repairing receipts

Who are affected

  • if you synced on 2021.06.04 or earlier, and upgraded the node to 2021.06.05 at some point.

Who are NOT affected

  • if you are still on 2021.06.04

  • if you synced your node on Erigon 2021.06.05 or later;


If you are affected, your receipts could be damaged.

We provide an utility to fix the receipts in the db:

make hack
./build/bin/hack --action scanReceipts --chaindata <datadir>/erigon/chaindata

Changelog

  • --rpc.batch.concurrency flag

  • receipts repairing utility

  • sentry improvements

  • fixups for debug_traceTransaction

  • trace_call is about 2x faster

  • fixup for transaction propagation with an external sentry

  • enable private rpc endpoint by default, allowing hybrid mode for the roc daemon out of the box

  • don't crash rpcdaemon on streamable WS (we don't support them still, but at least the app doesn't crash on them)

SHA256

reproducible builds in Docker aren't functional at the moment

2021.07.01-alpha

01 Jul 11:07
Compare
Choose a tag to compare

Changelog

  • London: add GasPrice for the DynamicFeeTransaction

  • --blockDownloaderWindow cli option, to be able to sync on lower RAM machines, (8 Gb)

  • fix for receipts status #2250

  • add effective gas price to eth_getTransactionReceipt and eth_getBlockReceipts

  • fix new tx propagation for external sentry (sendRawTransaction)

  • eth_chainID alias for eth_chainId for better compatibility

  • partial support for trace_replayTransaction and trace_replayBlockTransactions, only state diffs

  • fixup for eth_call, set max gas by default

SHA256

reproducible builds in Docker aren't functional at the moment

2021.06.05-alpha

24 Jun 11:06
cc360ec
Compare
Choose a tag to compare

Long Migrations

  • recovering broken receipts: ~35m

Changelog

  • fix range for eth_getLogs

  • performance improvements for eth_getLogs

  • fix for a regression that led to a state corruption for some users

  • remove root from eth_getTransactionReceipt

  • add a migration to recover potentially broken receipts in the db

  • fix a regression with the localhost origin

  • STOP_BEFORE_STAGE environment variable in case anyone wants a partially synced node (could be useful for issue debugging)

  • net_peerCount is implemented (both external and internal sentries)

  • now it is possible to build Erigon on Windows without extra DLL, and without having admin priviledges

  • fix for a deadlock when using external Sentry

SHA256

reproducible builds in Docker aren't functional at the moment

2021.06.04-alpha

17 Jun 17:25
bc2f8bd
Compare
Choose a tag to compare

LMDB support is removed in this release

If you want to keep using LMDB, you need to keep the old version. We don't have any plans to go back to LMDB now, so we recommend you to migrate and resync using MDBX.

Changelog

  • trace.compat for full (including bugs) compatibility with Open Ethereum for trace_ routines

  • better OE compatibility for trace_call and trace_callMany

  • fixup for potential hang of recovering senders sync stage

  • London testnet support

  • LMDB support removed

  • fix a concurrency crash in header downloading #2175

  • fixes for gas price oracle for EIP-1559 #2173

  • enable eth/65 p2p protocol by default (to be trackable using ethernodes and other services that don't support eth/66 yet)

  • build all Erigon executables on Windows #2163

  • add --maxpeers cli option

  • support ws compression in the RPC daemon

  • saving panic stack traces into a file for further diagnostics

SHA256

reproducible builds in Docker aren't functional at the moment

2021.06.03-alpha

10 Jun 10:58
81a22af
Compare
Choose a tag to compare

trace_filter index corruption in 2021.05.04 -- upgrade your node ASAP

if you are on 2021.06.01 or later, no action needed.

This update is time sensitive, if you synced your node recently using 2021.05.04, update your node ASAP.

That way our fix will be able to fix the index w/o having to resync your node.

If you didn't upgrade from 2021.05.04 to 2021.06.01, 2021.06.02 or 2021.06.03 until ~June, 10th, you need to resync your node to keep trace_filter functional.

Changelog

  • fix for the node name in p2p #2129 (should now show up on ethernodes.org, etc) (shout out to MariusVanDerWijden)

  • return memory metrics #2117

  • begin working on the Sokol testnet support; not functional yet.

  • staged sync improved test coverage (and bug fixes)

  • batch requests in the RPCDaemon #2105

  • more code cleanup

SHA256

reproducible builds are broken in this release, we know that and we are working on fixing that

2021.06.02-alpha

04 Jun 14:43
Compare
Choose a tag to compare

Hotfix for 2021.06.01

  • fixed the migration on the clean DB

There was a regression in 2021.06.01, causing the node to crash on startup on an empty DB. This version fixes it.

2021.06.01 changelog

Legacy Downloader Is Removed

No more flag --download.v2.

trace_filter index corruption -- upgrade your node ASAP

This update is time sensitive, if you synced your node recently using 2021.05.04, update your node ASAP.

That way our fix will be able to fix the index w/o having to resync your node.

If you didn't upgrade from 2021.05.04 to 2021.06.01 until ~June, 10th, you need to resync your node to keep trace_filter functional.

Changelog

  • fix for the trace_filter index corruption

  • more work on London hardfork

  • switch Baikal devnet to Cavaleras devnet

  • more work on Sentry

  • fix reproducible builds

  • staged sync bugfixing & more test coverage

  • improvements for windows builds #2054

  • eth_gasPrice crash fixup #2031

  • legacy downloader is removed, --download.v2 flag is removed

  • a lot of code cleanup

SHA256

tool sha256 validation command
./bin/erigon 7b2328b7c4d4ca63a5ffaa658bbd6268422e904e0ef531222936e31ecc4cbe21 make docker && docker run turbo-geth:latest sha256sum /usr/local/bin/erigon
./bin/rpcdaemon 163c53c6b1b22bbcc84fee7ef2d51ced7b232630e69ee1b3312f231d5bdb4d9e make docker && docker run turbo-geth:latest sha256sum /usr/local/bin/rpcdaemon

It should be the same if building on Linux with go 1.16.

2021.06.01-alpha

04 Jun 11:54
43915a7
Compare
Choose a tag to compare

Legacy Downloader Is Removed

No more flag --download.v2.

trace_filter index corruption -- upgrade your node ASAP

This update is time sensitive, if you synced your node recently using 2021.05.04, update your node ASAP.

That way our fix will be able to fix the index w/o having to resync your node.

If you didn't upgrade from 2021.05.04 to 2021.06.01 until ~June, 10th, you need to resync your node to keep trace_filter functional.

Changelog

  • fix for the trace_filter index corruption

  • more work on London hardfork

  • switch Baikal devnet to Cavaleras devnet

  • more work on Sentry

  • staged sync bugfixing & more test coverage

  • improvements for windows builds #2054

  • eth_gasPrice crash fixup #2031

  • legacy downloader is removed, --download.v2 flag is removed

  • a lot of code cleanup

SHA256

tool sha256 validation command
./bin/erigon 112476d74630e04c4ce3cb9240ccb5db5cb444380c8178a4d3e550e18355b6af make docker && docker run turbo-geth:latest sha256sum /usr/local/bin/erigon
./bin/rpcdaemon 3ec9d0e7416a93398a3e66d100e4b47c049538c2bd096965c00e062f8eb979bd make docker && docker run turbo-geth:latest sha256sum /usr/local/bin/rpcdaemon

It should be the same if building on Linux with go 1.16.