This release provides bug fixes and regression tests.
Description of the Issues
Ambiguous CPU billing of scheduled transactions (#5068)
in #5001 the ability to bill appropriate CPU time for soft_fail and hard_fail scheduled transaction was added. However, this exposes an ambiguity in the block structure: There is no way to represent the objective failure of a scheduled transaction due to a limit that was breached by the billed CPU time. Producing a block with this ambiguity would fail to validate protecting the chain but causing minor disruptions. As a result, producers will no longer include those scheduled transactions in their blocks, giving each producer a chance to execute it in under the limited time or to another objective failure case. (#5068)
Misclassification of Blocks as "exhausted" (#5071)
The producer_plugin was treating leeway cpu exceptions as subjective failures. This implied to the rest of the producer_plugin code that the block is exhausted. However, this exception does not represent an exhausted block and rarely clears in the next block. Therefore, leeway cpu exceptions are no longer considered block exhaustion signals.
Regression Tests for Previous Security Issues
This release includes regression tests that cover security issues fixed through version 1.0.8. Regression tests lag the disclosing release(s) by one-month to enhance the security of operational networks.
Other
Fix for asset overflows in eosiolib for parity with the WASM SDK (#5092)
Mitigations
None
We tested on Jungle Testnet and We are done on Mainnet. Thanks to CryptoLions.
Contact/About Us
If you are an advanced blockchain user, feel free to use any of those tools that you are comfortable with.
If you like what we do and believe in EOS9CAT, vote for eosninecatbp! Waiting for your support. Have a question, send an email to us or visit our website.
FOLLOW US on Facebook, Telegram, Medium, SteemIt, Github, Meetup E0S9CAT, Reddit, Twitter, and LinkedIn.
Good Info!
thank you @conceptskip!