[1.0.3] Fix flaky nodeos_snapshot_diff_test due to a race condition #875
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.
Recently,
nodeos_snapshot_diff_test
fails in almost every CICD run.This is due to a race condition that at the startup of head mode node, net thread and http thread can start to work in different order. If http thread processes
schedule_snapshot
request after net thread starts to sync with the irreversible mode node, schedule_snapshot request will miss the scheduled block number. If it is before net thread starts to sync with the irreversible mode node,schedule_snapshot
request will catch the scheduled block number and the snapshot is taken.This PR changes to start up the head mode node while the irreversible mode node is down so that net thread will not sync, make
schedule_snapshot
request, and finally restart irreversible node.Test run in CICD for 3 times. No failure happened.
Resolves #846