Prs/fix unittests active transactions.inactive votes cache election start #4409
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.
This testcase has 2 different issues.
This is not meant to be a real fix, but a help for further investigation.
Issue 1
The reason for this failure is because there is a race condition between the
block_cemented_callback
and the priority scheduler loop. Sometimes the block gets cemented before the priority scheduler loop has started as you can see in the stats log below:--> I didn't know how to fix it, but added a delay in the
block_cemented_callback
to show that the error is gone.Issue 2
I relaxed the conditions to timely, so the following will apply :
node.ledger.cache.cemented_count
is incremented,nano::test::confirmed
eventually returns truenano::test::confirmed
returns true for all blocks,node.active.empty ()
will eventually return true