fix(e2e): pause L1 mining during slot query + warp in epochs_ha_sync#22502
Closed
spypsy wants to merge 3 commits into
Closed
fix(e2e): pause L1 mining during slot query + warp in epochs_ha_sync#22502spypsy wants to merge 3 commits into
spypsy wants to merge 3 commits into
Conversation
Contributor
|
I'm not sure this makes a difference. The slot we're jumping ahead to is 2 slots in the future, computed from the slot number we've just read. There's no proving/sending txs in between, so there's no way that 8s pass between the read and the warp. By the way, does this flake still happen? I had tried fixing it last week in this PR, by jumping 2 slots instead of 1, to prevent the race condition of 1) reading the current slot, 2) time passes and we move into it, 3) we try warping into it. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Fixes a ~1.7% flake in
epochs_ha_synccaused by a race between Anvil's interval mining and the test's slot computation + warp sequence. During the ~8s spent proving/sending transactions, L1 blocks kept being mined, and by the timewarp()was called, the chain had already advanced past the target timestamp. Wraps the slot query + warp inexecWithPausedAnvilso L1 can't advance between the two calls.Fixes A-892