22.7.0-RC2
Pre-release
Pre-release
Improvements
- JEMalloc included in this release. jemalloc is an alternative memory allocator that better handles concurrency and memory fragmentation. Like many other projects, we have discovered that besu benefits from using a modern alternative malloc implementation. In the latest release we have included a preference for the jemalloc library, and have found it to manage rocksdb memory much more effectively. In addition to adding this preference in the *nix besu startup script, jemalloc has been baked into our docker images by default. If you are not running docker besu in a docker container, linux users can leverage jemalloc simply by installing the jemalloc library (which most distributions have a package for)
- RocksDB configuration changes. We have spent time researching how to configure our database technology (RocksDB) to gain better performance and address some recent regressions. We are seeing improvements on Block Import times and memory usage in total, so please update to this build if you are experiencing memory challenges.
- Add a block to the bad blocks if it did not descend from the terminal block #4080
- Backward sync exception improvements #4092
- Remove block header checks during backward sync, since they will be always performed during block import phase #4098
- Optimize the backward sync retry strategy #4095
Bug Fixes
- Changed max message size in the p2p layer to 16.7MB from 10MB to improve peering performance #4120
- Fixes for parent stateroot mismatch when using Bonsai storage mode (please report if you encounter this bug on this version) #4094
- Above Bonsai related fixes have addressed situations where the event log was not indexed properly #3921
- Fixes related to backward sync and reorgs #4097
- Checkpoint sync with more merge friendly checkpoint blocks #4085
- Fixes around RocksDB performance and memory usage #4128
- Fix for RPC performance parallelization to improve RPC performance under heavy load #3959
- Fix for post-Merge peering after PoW is removed in our logic for weighting peers #4116
- Various logging changes to improve UX- Return the correct latest valid hash in case of bad block when calling engine methods #4056
- Add a PoS block header rule to check that the current block is more recent than its parent #4066
- Fixed a trie log layer issue on bonsai during reorg #4069
- Fix transition protocol schedule to return the pre Merge schedule when reorg pre TTD #4078
- Remove hash to sync from the queue only if the sync step succeeds #4105
- The build process runs successfully even though the system language is not English #4102
- Avoid starting or stopping the BlockPropagationManager more than once #4122
Download links
- https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/22.7.0-RC2/besu-22.7.0-RC2.zip / sha256
d56c340f5982b882fbecca2697ca72a5bbefe0e978d2d4504211f012e2242a81
- https://hyperledger.jfrog.io/artifactory/besu-binaries/besu/22.7.0-RC2/besu-22.7.0-RC2.tar.gz / sha256
befe15b893820c9c6451a74fd87b41f555ff28561494b3bebadd5da5c7ce25d3