[3.2] Fix nodeos forked chain test #499
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Backport EOSIO/eos#9211 and EOSIO/eos#9930.
Resolve #405 and #437.
From EOSIO/eos#9211:
No longer require a producer to have to produce 12 blocks per round to allow for VMs not always getting time slices. Also, changed the default maximum time that successive transactions could be separated by. (It is a corner case, that resulted in a transaction not being processed for a whole production window. I added a comment to the Jira task to ensure it gets turned back on when that is fixed)
From EOSIO/eos#9930:
When building the list of blocks to search for forking, the range was
for blockNum in range(preKillBlockNum, lastBlockNum)
. In Python, the range is half closed. This results in an off by one problem if the forking block was the exact lastBlockNum. In EPE-465, lastBlockNum and the forked block number both ware 166, but the search ended t 165. This is also why the problem occurs rarely. The fix is for blockNum inrange(preKillBlockNum, lastBlockNum + 1)