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.
Motivation:
The SAL tests suffered from a rare non-determinism: When we go onto the
EventLoop to get a value and then leave it, we previously just assumed
that the EventLoop would park itself before we did any futher operations
on it.
That was mostly true because the tests are doing one thing after the
other. There was however a narrow race: If the tests enqueued new work
onto the EventLoop before the EventLoop parked itself, then the new work
would be run before the EL parks itself.
That would make the next operation fail because the operations usually
start by checking that we're parked because that's a synchronisation
point between tests and EL.
Modifications:
Actually wait until the EL's parked. That proves we found our
synchronisation point.
Result: