Release notes
Major highlights
-
Optimism Support
-
Nethermind can now be used as an execution client for OP Stack chains, including Optimism and Base mainnets.
-
OP Stack network have a EL and CL concepts similar to Ethereum. Nethermind works as EL client, refer to [optimism’s docs](https://community.optimism.io/docs/developers/bedrock/node-operator-guide/#configuring-op-node) for how to run
op-node
as your CL client. -
Just run
nethermind -c op-mainnet
ornethermind -c base-mainnet
and you’re ready. -
The [Canyon upgrade](https://blog.oplabs.co/canyon-hardfork/) went live in Optimism and Base testnets very recently. Support for this upgrade is being worked on at the moment and will land in a future release, so if you try to sync this networks you won’t be able to go past the hardfork block.
💡 Some OP Stack networks (e.g. Op Mainnet and Op Goerli) have some legacy state that you need to download before actually running the client. We are hosting this legacy data as a snapshot file in our servers. The Nethermind client will automatically download and decompress it when you run it for the first time on Optimism Mainnet, no need for manual downloads. Refer to the [snapshot plugin docs](https://docs.nethermind.io/fundamentals/configuration#snapshot) for more info.
-
-
Initialize Database from Snapshot
- There is now support for initializing the nethermind database from a
.zip
snapshot file. - This will be useful if you want to have backup copies of your node’s database for faster setup.
- For more information refer to the [plugin docs](https://docs.nethermind.io/fundamentals/configuration#snapshot).
- There is now support for initializing the nethermind database from a
-
Reduced memory usage spikes when node overloaded with CL requests
- Over the past few weeks, we've noticed a spike in memory usage on nodes, primarily due to numerous simultaneous GetPayloadBodiesByRangeV1 requests from CL clients.
- Our developers have identified an opportunity for optimization. Through these improvements, we've managed to significantly reduce memory consumption in high-stress scenarios. During our stress tests, we observed a reduction in additional RAM usage from 12GB to just 1-1.5GB.
- Furthermore, this memory is quickly freed up, allowing the node to return to its normal usage levels.
Changelog
New features and Important changes
- Optimism plugin by @deffrian in #6146
- Initialize database from snapshot by @jmederosalvarado in #6177
- Activate (most) JsonRPC endpoints before BlockReprocessing by @Demuirgos in #6143.
- Reduce memory for GetPayloadBodiesByRangeV1 and GetPayloadBodiesByHashV1 by @benaadams in #6287
Cancun
- TxPool: refactoring for blob txs by @marcindsobczak in #5953
- Make EIP-4844 parameters configurable by @rubo in #6192
- Rename EIP-4844 chain spec parameters by @rubo in #6205
- Upgrade ckzg which uses the final setup by @flcl42 in #6208
- Announce txs to newly connected peer only when we are synced by @marcindsobczak in #6202
- Use blob gas instead of count by @flcl42 in #6229
Gnosis
Bug fixes and stability
- Fix unable to decode auth message with invalid version by @asdacap in #6180
- Fix on handshake failure not disconnecting connection by @asdacap in #6179
- Fix tx index was removed during reorg by @asdacap in #6188
- Fix Antithesis NullPointerException in Evm by @Demuirgos in #6191
- Fix incorrect exitcode in SIGTERM and SIGINT. by @asdacap in #6215
- Fix max write buffer number is 0 on holesky. by @asdacap in #6216
- Handle concurrent WebSockets messages by @emlautarom1 in #6210
- Fix old blocks hang on insert failure by @asdacap in #6233
- Fix/nethermind not sending hello on disconnect by @asdacap in #6241
- Fix/gas estimations precompile error by @LukaszRozmej in #6259
Performance
- Perf/prefix block key with blocknum by @asdacap in #6158
- Perf/NoWAL during OldBodies by @asdacap in #6227
Logging
- Fix typos in logs and comments by @xiaolou86 in #6228
- BlockDownloader - client type in logs by @MarekM25 in #6240
Other changes
- Feature/more diagnostics bad blocks by @LukaszRozmej in #6207
- Blob test tool files moved by @ak88 in #6168
- rename keccak by @tanishqjasoria in #6197.
- Extract revert messages by @emlautarom1 in #6226
- Remove
Rinkeby
testnet by @emlautarom1 in #6273 - Select proper drive when using
VolumeFreeSpace
trigger by @emlautarom1 in #6269
New Contributors
- @ak88 made their first contribution in #6168
- @xiaolou86 made their first contribution in #6228
Full Changelog: 1.22.0...1.23.0