github status-im/nimbus-eth2 v23.3.1

latest releases: v24.9.0, nightly, v24.8.0...
19 months ago

Notes

Nimbus v23.3.1 is a medium-urgency point release addressing a number of accidental configuration handling breaking changes that were shipped in the v23.3.0 release. It also improves the stability of Nimbus when paired with a Besu execution client and improves the fault-tolerance when driving multiple execution clients.

Fixes

  • Nimbus was performing eth_getLogs request with parameters that were exceeding the default --rpc-max-logs-range=1000 limit on Besu. This was a non-fatal issue that resulted in slower deposit syncing speed and the frequent warning message "Connection to EL node degraded". The limit will be increased in the next mainnet release of Besu, but Nimbus v23.3.1 honours the existing limit at the cost of a slightly slower syncing speed with all other execution clients:

    6fb48ac

  • v23.3.0 did not support Engine API URLs which don't specify a protocol in the URL (e.g. http, https, ws or wss). v23.3.1 is backwards-compatible with all previous Nimbus releases:

    3a35809

  • v23.3.0 produced a parsing error on TOML configuration files that specify the web3-url parameter as an array of strings. v23.3.1 is backwards-compatible with all previous Nimbus releases and introduces a new more convenient way for specifying the Engine API configuration in TOML:

    https://nimbus.guide/eth1.html#running-multiple-execution-clients
    46f4826

  • v23.3.0 removed the hidden configuration option --web3-force-polling which remained in use by some users. v23.3.1 restores the option as a deprecated one. Please note that all hidden configuration options are intended for use only by the Nimbus development team for testing purposes:

    ee610cb

  • The release addresses a potential crash triggered by Engine API connections experiencing frequent error responses:

    d899a6a

  • The release addresses a potential issue where a single non-synced execution client may cause the Nimbus sync state to revert to synced/opt, even when all validator duties can be performed through the remaining execution clients that are still synced:

    d899a6a


Nimbus v23.3.0 was low-urgency upgrade bringing full support for the upcoming Capella hard-fork on the Goerli testnet. Keep an eye out for future mainnet releases!

Improvements

  • You can increase the resilience of your setup and eliminate any downtime during upgrade procedures of the execution client by allowing your beacon node to manage multiple execution clients. To enable this mode, just specify multiple URLs through the --el option (alias of --web3-url) when starting your beacon node:

    ./run-mainnet-beacon-node.sh \
      --el=http://127.0.0.1:8551 \
      --el=ws://other:8551 \
      --jwt-secret=/tmp/jwtsecret

    As long as any of execution clients remains operational and fully synced, Nimbus will keep performing all validator duties. To carry out an upgrade procedure without any downtime, just restart the execution clients one by one, waiting for each instance to re-sync before moving to the next one.

    If you use this mode with different execution client implementations, Nimbus will act as an execution layer consensus violation detector, preventing the publishing of blocks that may trigger a catastrophic partitioning in the network.

    #4465
    https://nimbus.guide/eth1.html

  • The metrics engine_api_responses, engine_api_request_duration_seconds and engine_api_timeouts provide statistics about latency and response status codes for all requests sent to each individual execution layer URL:

    #4465
    #4707

  • Nimbus will now attempt to connect to a locally running execution client even when the options --el and --jwt-secret are not specified. This is made possible by the following proposed standard:

    ethereum/execution-apis#302

    Please note that the standard hasn't been implemented in any execution client yet.

  • Nimbus now support the latest version of the Builder API, adding support for the Capella hard-fork:

    #4643

  • Improved diagnostic messages and more spec-compliant behavior of the Nimbus validator client when being paired with a non-synced or optimistically synced beacon nodes:

    #4643
    #4657
    #4673

  • The Sqlite3 database engine has been upgraded to version 3.40.1:

    #4649

Fixes

  • The doppelganger detection now acts safer after a period of lost network connectivity

    #4616

  • The doppelganger detection now acts safer in the presence of out-of-order responses from the beacon node:

    #4691

  • Nimbus can now export ERA files for the Sepolia network:

    #4689

  • The --history=prune mode will no longer interfere with serving light client data for the full retention period as mandated by the spec:

    #4702

  • Nimbus now downloads a longer range of recent execution blocks in order to avoid potential situations where our Eth1Data votes fail to agree with the honest majority in the network:

    #4588

  • Nimbus has addressed a potential interruption of deposit syncing when connected to Geth over WebSocket:

    #4708

Urgency guidelines

low-urgency: update at your own convenience, sometime within our normal update cycle of two weeks

medium-urgency: may contain an important stability fix, it is better to update sooner rather than later

high-urgency: update as soon as you can, this is a critical update required for Nimbus to function correctly

SHA512 checksums

# Linux AMD64
ecd3fab28cba8d5646df6c03f1f2c40d53ecaf05341d2fdd9089b318d7ecedef1b8943349d44cf5a7338bc7cd37a87626dba0d15b0b799a2ff072b6e98a8b861  nimbus_beacon_node
4fbaa0ecde30ca00cb3b09391f8a3f9a8f60cef9fadccf818c454791e7d8592a537c944df0220bc4cea7874e9fd95b1ae709c00adb3b60434ae95013b5454f08  nimbus_validator_client
# Linux ARM64
ae917453bbc079835b1272603bf5967dfc5a6c327e9898c9b0d6462ee26d84e88f1feb18c03070e26a2f94f0a0e1495a21ecd139d3c90ddacae5d3750670a160  nimbus_beacon_node
527844aff387720be24c07d8201ab12a1f14b3b461e649510a2008a59b905b1f78b24ec753c88fcfd66badc0302d1171e0c3b45f78a3258d2bb28be5d52f8724  nimbus_validator_client
# Linux ARM
4b85fcf2f096a9c62f945e4aa4ff7146726928dffed905bd5a42394270775821dd58509065285606b3387748a95e9212067ecad59eb704092e2505bad9e05c90  nimbus_beacon_node
6b3b65609d0bf990ea79db9b86d824e1c8fc0824c431fb82a5262db3b557bc5f5dcf55883735152024cbb390faf8f22a9cd96f5bb149e70af245338282789ca0  nimbus_validator_client
# Windows AMD64
3f307a52989717e615398f65c92b1b100f6b5aabb6f567acd992600d1bc481d1177a5bee987e7ea47d5578392f917e2b7f27b33de8d6924ab3158be7196936b4  nimbus_beacon_node.exe
1ba7bb62874d91c55ee01e2b71dedfa2c976bf8a35aea78349e6e880ce87471204a9d0db38274b6efa332b7531b30f0ab25476ce0998bf34172e07fc12162663  nimbus_validator_client.exe
# macOS ARM64
90e61d554fb6d057ed388fd5740be8bd6067b9da158dd86c43398e887fd806a52e39f006ac40c575ceabcd5771d0bac03b9327fe072d451173ed05ee8219de36  nimbus_beacon_node
24207c2ecb851339a78cd1be7d84784bac5796a4d7f0ce42c9050ef297cd50abe5dcd76d3b135cdc89bea479ea9bf8ece2b1402a77ec240be862c26d5827f06f  nimbus_validator_client

Don't miss a new nimbus-eth2 release

NewReleases is sending notifications on new releases.