Mandel v2.0.14 Release Notes
Changes from EOSIO/eos v2.0.13
Three Strike Rule
Previously the 3-strike rule (3 failed trx per block and then no more allowed per account) was only applied during processing of the unapplied transaction queue in start_block. Now it is applied during "regular" block processing as well. This prevents users from flooding a BP with failing transactions during their block production window, which would limit the amount of valid transactions that can be placed in a block.
Configurable Subjective Account Decay
This adds new config option subjective-account-decay-time-minutes
to Producer Plugin. The value is used to calculate the expired_accumulator_average_window, thus making account decay time configurable. The passed value must be above 0, and defaults to 1440. The default value for expired_accumulator_average_window remains the same.
Misc Changes
- Added logging for onblock errors.
- Added total CPU and NET to get_info api call.
- Added reset of sync_known_lib_num on closing connection to optimize syncing.
Bug Fixes
- Fix for case when net_plugin sends sync_request_message{0,0} in response to block<lib it doesn't reset sync_last_requested_num. After that when node gets notice_message it ignores it instead of doing catchup since head is less than sync_last_requested_num.
- Fixed handling for deltas bigger than uint32_t size can indicate. This was an issue for Wax.
- Changed to avoid accessing connection data during operation_aborted since it can be called during shutdown when connection is being destroyed and result in a net_plugin segfault.
- Added a fix for https bug, issue EOSIO/eos#10695 where passing incorrect HTTPS configuration to nodeos will prevent HTTP server from functioning properly. Move variable initialization in http_plugin::plugin_initialize to the beginning of the function.
- Fixed where sync_reset_lib_num was not updating sync_known_lib_num when syncing.
- Added a fix to trim_blocklog_front() to address bad memory access exception when there are less than 8 bytes right after address buf + buffer_index in the buffer.
- Fixed some cases where net_plugin kept trying to re-connect on fatal conditions (like node is a different chain (chain_id))
PRs
- #298 Apply 3-strike rule for complete block production
- #99 Configurable subjective account decay time
- EOSIO/eos#11066 net_plugin bugfix for resetting requested range
- EOSIO/eos#11067 Docker tagging required for backwards compatibility of unpinned images
- EOSIO/eos#11051 Big ship deltas
- EOSIO/eos#11038 Log onblock errors
- EOSIO/eos#11007 Release/2.0.x pinned contracts registry image
- EOSIO/eos#10932 Add total CPU and NET to get_info
- EOSIO/eos#10961 net_plugin: shutdown segfault fix
- EOSIO/eos#10767 Fix https bug
- EOSIO/eos#10764 Update sync_known_lib_num even if syncing
- EOSIO/eos#10720 Change stability pipeline specific guard to remove dependency on special patterns
- EOSIO/eos#10370 Handle special case in trim_blocklog_front
- EOSIO/eos#10651 Reset sync_known_lib_num when closing a connection