This release brings planned reforms to our database schema that provide substantial performance improvements and pave the way for an improved pause-free doppelganger detection (reserved for a future release).
Please be aware that, while we are committed to maintaining backwards compatibility between releases, this release does not support seamlessly downgrading back to any previous 1.0.x release. While you shouldn't need to downgrade, if for some reason you do, please get in touch with us before.
Even though we've tested this release extensively, as an extra safety precaution we advise you to **backup your Nimbus database (nbc.sqlite3
) before upgrading -- the best way to do this is to simply copy it over (you'll find it either in build/data/shared_mainnet_0/db/
, or the directory you supplied to the --data-dir
argument when you launched Nimbus).
New features:
-
More efficient state storage format ==> reduced I/O load and lower storage requirements.
-
More efficient in-memory cache for non-finalized states ==> significant reduction in memory
usage. -
More efficient slashing database schema ==> scales better to a larger number of validators.
-
The metrics support is now compiled by default thanks to a new and more secure HTTP back-end.
-
setGraffiti
JSON-RPC call for modifying the graffiti bytes of the client at run-time. -
next_action_wait
metric indicating the time until the next scheduled
attestation or block proposal. -
More convenient command-line help messages providing information regarding the default
values of all parameters. -
--direct-peer
gives you the ability to specify gossip nodes to automatically connect to. -
Official docker images for ARM and ARM64.
-
Support for fallback
--web3-url
providers.
We've fixed:
-
Long processing delays induced by database pruning.
-
File descriptor leaks (which manifested after failures of the selected web3 provider).
-
The validator APIs now return precise actual balances instead of rounded effective balances.
-
A connection tracking problem which produced failed outgoing connection attempts.
Breaking changes:
-
Nimbus-specific JSON-RPCs intended for debug purposes now have the
debug_
prefix:getGossipSubPeers
is nowdebug_getGossipSubPeers
getChronosFutures
is nowdebug_getChronosFutures
SHA512 checksums:
# Linux AMD64
8d553ea5422645b5f06001e7f47051706ae5cffd8d88c45e4669939f3abb6caf41a2477431fce3e647265cdb4f8671fa360d392f423ac68ffb9459607eaab462 nimbus_beacon_node
# Linux ARM64
93ffd03a0ce67f7d035e3dc45e97de3c2c9a05a8dd0c6d5f45402ddb04404dc3cf15b80fee972f34152ef171ce97c40f794448bc779ca056081c945f71f19788 nimbus_beacon_node
# Linux ARM
f2e75f3fae2aea0a9f8d45861d52b0e2546c3990f453b509fab538692d18c64e65f58441c5492064fc371e0bc77de6bab970e05394cfd124417601b55cb4a825 nimbus_beacon_node
# Windows AMD64
fd68c8792ea60c2c72e9c2201745f9698bfd1dae4af4fa9e1683f082109045efebd1d80267f13cafeb1cd7414dc0f589a8a73f12161ac2758779369289d5a832 nimbus_beacon_node