This is a maintenance release that brings performance improvements and bugfixes.
- Fix a bug in the
GetAccountInfo
endpoint in GRPCv2 where thear_data
field
always would be empty. - Avoid deadlocks during node shutdown in specific scenarios.
- The node will now shut down to start if an error occurs in a required service
(e.g., grpc server). In particular, the node will shut down if a required
service could not be started. - Add timeout to downloading out of band catchup files when block indices and
catch-up chunk files are specified by an URL. The timeout is controlled
by the option--download-blocks-timeout
(environment variable
CONCORDIUM_NODE_CONSENSUS_DOWNLOAD_BLOCKS_TIMEOUT
) and defaults to 5 min.
timeout is 5 now minutes per chunk instead of waiting indefinitely. - Relay blocks earlier. In particular this means that blocks are now processed in
two steps,block receive
andblock execute
. The former performs verification of block meta data
while the latter adds the block to the tree.
Blocks are now enqueued in the outgoing message queue in between the the two steps. - Removed the configuration option 'no_rebroadcast_consensus_validation'.
- Improvements to allow greater concurrency with transaction processing.
(Checking transaction signatures is done without acquiring the global
state lock.)