Releases: Fantom-foundation/go-opera
v1.1.3-rc.5
v1.1.3-rc.4
Go-opera 1.1.3-rc.4 is an optimization release to enhance performance.
This update includes an enhanced event emission algorithm, which reduces Time to Finality (TTF) without increasing the number of emitted events per second.
For API nodes, the update is recommended. It addresses previously identified Out-Of-Memory (OOM) crashes in the filter API and enhances the estimation of gas tip
/gas price
for transactions.
- Fix OOM-related issues with filter API (#425)
- New events emission algorithm (#478, #483, #484 #480)
- Performance improvement for vector clock storage (#479)
- Improvements for
gas tip
/gas price
estimation (#490, #492) - Fixes for metrics (#463, #465)
- Update genesis contracts bytecodes for fakenet (#439)
- Allow building with Go 1.20+ (#428)
- Fix GPO suggesting tip lower than txpool's limit (#512)
Full Changelog: v1.1.2-rc.6...v1.1.3-rc.4
v1.1.3-rc.3
Pre-release for Go-opera 1.1.3
v1.1.2-rc.6
Go-opera 1.1.2-rc.6 is a maintenance release. It includes the following fixes:
v1.1.2-rc.5
1.1.2-rc.5 is an optimization release. Improvements include batched genesis blocks processing, configurable DBs management, parallel EVM logs search and optimizations in p2p protocol.
Depending on hardware, it can achieve approximately ~1.3x improvement for events/blocks processing, ~3x improvement for genesis file processing (except for archive genesis files), ~5x improvement for logs search.
There are two migration options for upgrading to 1.1.2-rc.5:
- Preserving the existing legacy DBs layout:
--db.migration.mode reformat --db.preset legacy-ldb
. This option is instant but will leave out some of the performance improvements for blocks/events processing. - Rebuilding DBs according to a new layout:
--db.migration.mode rebuild --db.preset X
, where X is a selected DBs layout. Migration will take a lot of time - for an NVMe SSD drive, the number of hours would be roughlydatadir size in GB
divided by 50GB/hour
. If the remaining disk space is insufficient to store a copy of largest DB in datadir/chaindata, then the migration will take up to 3 times longer, depending on available disk space.
Flags --db.migration.mode
is required only if datadir isn't migrated yet.
There are 2 options for the new --db.preset
flag:
ldb-1
- fastest LevelDB layout (default option).pbl-1
- fastest Pebble layout.
Pebble offers slightly better performance and smaller IO utilization on average, especially with extended cache.
We don't recommend using Pebble presets for validators nor other mission-critical nodes yet.
Patch notes
- Update license to LGPL-3 (#346)
- Logs search optimization (#336)
- Configurable DBs management based on routing rules (including Pebble as an option) (#343, #347, #357, #361)
- DBs batching for genesis processing (#343)
- Additional caches (#343)
- Stricter conditions for starting LLR and txpool syncing (#343)
- Add flag for restricting p2p networking to given IPs and hiding private nodes from public network (#340)
- Fix block processing metrics, remove unused metrics (#348)
- Desyncronize DBs flushes (#350)
- Forbid unlocking accounts with enabled external RPC (#338)
- Incremental genesis (#389)
- Improve DB compaction (#384, #401)
- Add support for
--rpc.evmtimeout
flag (#393)
stacktrace
allow multi-unit genesis processing
v1.1.1-rc.2
v1.1.1-rc.2 is a hotfix release for an issue. The upgrade is highly recommended for all nodes.
This release features automatic EVM pruning which can be enabled with either --gcmode full
or --gcmode light
flag. --gcmode full
option will prune much more EVM nodes than --gcmode light
at expense of worse performance.
1.1.1-rc.1
Release v1.1.1-rc.1 allows new read nodes to use new customizable genesis files and to sync using snapsync
mode.
The upgrade is highly recommended for API nodes, as it fixes race condition in filter API calls and enables improved gas price (priority fee) estimation.
The upgrade is not recommended for validator nodes yet.
Note that, if you're running a 1.1.0-rc.X, after the upgrade to 1.1.1-rc.1, it won't be possible to use the old genesis files (mainnet.g
and testnet.g
). Instead, you can omit --genesis
flag and you don't need to download a new genesis file (as the file is no longer mandatory for already initialized nodes).
Release notes:
- API: erase deprecated
sfc
API namespace - Add support of self-hashed genesis files with different starting points and variable historical data (#271, #308)
- API: Improve gas price estimation (#314)
- API: Fix of race condition in filter API (#311)
- API: Extend Opera-specific API calls (#306)
- Validator: Adjust pending gas control in emitter (#313)
- Rework -
-exitwhensynced
flag (#304) - Opera stops processing data after a missed upgrade by default instead of only logging (#305)
1.1.0-rc.5
v1.1.0-rc.5 is a hotfix release for API nodes. It adds support of eth_feeHistory
API method required by some EIP-1559 clients.
Release notes:
- Add support for eth_feeHistory API method: #300