Repository navigation
test_slow_downlink: give the env-limit run enough steps after the window - #334
Merged
Merged
Conversation
The env downlink window opens at step 400 and lasts 14 s; with 1200 total steps the run could end about 2 s after the window at CI's merge rate, before island 1 drained its forwarder backlog and was merged again, so the "merge with island 1 after the window" check failed. The env test now runs 1700 steps, which leaves at least 12 s after the window even at the syncer's maximum merge rate. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.
Problem
test_env_downlink_limit_makes_a_running_island_slow[forwarder]failed intermittently on CI withno merge with island 1 after the window.The env downlink window opens at the first PULL for step 400 and lasts 14 s; the check needs a merge with island 1 after
window end + 2 s. With a fixed--total-steps 1200the time left after the window depends on the merge rate: about 7 s at 30 merges/s, but only about 2 s at the ~43 merges/s CI showed (260 merges in 6 s). In that 2 s island 1 must finish draining its forwarder backlog (~100 MB) and get a fresh-base push merged; on a slower runner the run ended first. The syncer behaved as designed (the drained line was logged, island 1 was never removed); the test's step budget was too small.Shrinking the budget locally reproduces it deterministically: with 1000-1100 total steps every run fails (the run ends inside or right after the window).
Fix
start_syncertakestotal_steps; the env test uses 1700 steps. Rounds are at least 20 ms apart (at most 50 merges/s), so the window ends by step 1100 and at least 12 s remain after it. Adds about 10 s to the test.Verification
tests/test_slow_downlink.py: 7 passed.🤖 Generated with Claude Code