refactor(consensus): clean up inbound message processing #892
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.
Description
Move HS message receivers into worker, pass messages to the OnInboundMessage handler. This checks proposals for missing transactions and parks them if necessary. New transaction notifications are sent to the OnInboundMessage handler to check if any proposals can be unparked. Once unparked, they are added to the "next message buffer". The
message buffer is polled (cancel safe) in the consensus worker tokio select loop.
Motivation and Context
Clean up after fix in #889
How Has This Been Tested?
Running stress test from PR #880
What process can a PR reviewer use to test or verify this change?
Consensus should still work as before
Breaking Changes