Repository navigation
test: stabilize in_tail compatibility notification test - #5565
Merged
Merged
Conversation
Watson1978
reviewed
Oct 23, 2026
**Which issue(s) this PR fixes**: None. **What this PR does / why we need it**: The compatibility test can race with the stat watcher: after writing the file, the watcher may call on_notify before the test's explicit call. That consumes the test subclass's one-time false response, so the read position has already advanced when the assertion runs. Disable the stat watcher in this test so its explicit notifications control the call order. The failure reported by PR #5529 (GitHub Actions run 39210929391) is this test-ordering instability, not a failure caused by the multithreading implementation. The test uses the default synchronous mode, and this stabilizes a compatibility test introduced by a separate refactoring. **Docs Changes**: None. **Release Note**: None; this only makes a test deterministic. Assisted-by: LLM GPT-6 Luna (OpenAI) Signed-off-by: Takuro Ashie <ashie@clear-code.com>
Disabling the stat watcher still lets timer callbacks race with explicit notifications. Detach all of the tail watcher's triggers before writing the file so only the test drives on_notify. Signed-off-by: Takuro Ashie <ashie@clear-code.com>
ashie
force-pushed
the
in-tail-compatibility-test-watcher-race
branch
from
October 23, 2026 01:07
f384113 to
4bab47d
Compare
Watson1978
pushed a commit
that referenced
this pull request
Oct 26, 2026
…est (#5565) (#5571) **Which issue(s) this PR fixes**: Backport #5565 None. **What this PR does / why we need it**: The compatibility test can race with the stat watcher: after writing the file, the watcher may call on_notify before the test's explicit call. That consumes the test subclass's one-time false response, so the read position has already advanced when the assertion runs. Disable the stat watcher in this test so its explicit notifications control the call order. The failure reported by PR #5529 (GitHub Actions run 39210929391) is this test-ordering instability, not a failure caused by the multithreading implementation. The test uses the default synchronous mode, and this stabilizes a compatibility test introduced by a separate refactoring. **Docs Changes**: None. **Release Note**: None; this only makes a test deterministic. Assisted-by: LLM GPT-6 Luna (OpenAI) Signed-off-by: Takuro Ashie <ashie@clear-code.com> Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Takuro Ashie <ashie@clear-code.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.
Which issue(s) this PR fixes:
None.
What this PR does / why we need it:
The compatibility test can race with the stat watcher: after writing the
file, the watcher may call on_notify before the test's explicit call.
That consumes the test subclass's one-time false response, so the read
position has already advanced when the assertion runs.
Disable the stat watcher in this test so its explicit notifications control
the call order.
The failure reported by PR #5529 (GitHub Actions run 39210929391) is this
test-ordering instability, not a failure caused by the multithreading
implementation. The test uses the default synchronous mode, and this
stabilizes a compatibility test introduced by a separate refactoring.
Docs Changes:
None.
Release Note:
None; this only makes a test deterministic.
Assisted-by: LLM GPT-6 Luna (OpenAI)