Hive Engine - Spring Cleaning Upgrade
This major release contains multiple consensus breaking changes, including improved error handling to support Node.js 20 and some optimizations to reduce the amount of data stored on-chain. There are various new configuration options for debugging and to allow fine tuning of streaming behavior. In addition, support has been added for optionally using block_api.get_block
to fetch Hive blocks, in preparation for eventual deprecation of condenser_api.get_block
(the currently used method).
The consensus breaking change is set to trigger on Hive block 83,680,408, which is roughly Saturday March 16, 2024, mid-morning Japan time. All node operators & witnesses are required to upgrade before that time, to avoid forking from the majority network.
The following PRs are included:
#41 - Update to dual rpc on find divergent block and restore parital
#46 - [Consensus] Support Node 20
#56 - Add Mongo 7 To Test List
#57 - Add time to process request to logs
#61 - Allow for using block_api.get_block API
#62 - [Consensus] Trim execution hash when contract is called
#63 - [Consensus] Truncate json metadata to only fields we use
See individual PRs for more details. Some things of note:
morgan
version 1.10.0 has been added as a dependency to package.json, in order to provide enhanced logging- The minimum required version of Node.js has been increased to 18.17.0 (although older versions should still work for the time being)
- New configuration settings added in config.example.json (see documentation in #61 for usage information):
"hashVerificationNode": false,
"streamerConfig": {
"antiForkBufferMaxSize": 2,
"maxQps": 1,
"lookaheadBufferSize": 5,
"useBlockApi": false
}
Credit goes to @Rishi556 and @eonwarped as the major contributors to this release.