Skip to content

Stabilize post and slow_post autests under parallel runs#12886

Open
bryancall wants to merge 3 commits intoapache:masterfrom
bryancall:fix-thread-config-port-readiness
Open

Stabilize post and slow_post autests under parallel runs#12886
bryancall wants to merge 3 commits intoapache:masterfrom
bryancall:fix-thread-config-port-readiness

Conversation

@bryancall
Copy link
Contributor

@bryancall bryancall commented Feb 13, 2026

Summary

  • stabilize startup ordering in post-early-return by assigning readiness on
    each upstream process (serverN.Ready = When.PortOpen(...))
  • keep StartBefore(serverN) call sites simple and aligned with reviewer
    guidance
  • broaden slow_post/server_abort stderr matcher to accept an additional
    observed exception signature from the intentionally misconfigured origin

Test plan

  • focused autest reruns under parallel execution (-j 16)
  • verify startup readiness wiring change in post-early-return
  • verify slow_post/server_abort still asserts expected origin abort behavior
  • confirm no production code changes

Gate each check_threads invocation on ATS port readiness using
When.PortOpen(ts.Variables.port) to avoid races where validation runs before
traffic_server is ready.
@bryancall bryancall requested a review from Copilot February 13, 2026 18:26
@bryancall bryancall self-assigned this Feb 13, 2026
@bryancall bryancall added this to the 11.0.0 milestone Feb 13, 2026
Add explicit origin readiness checks in post-early-return and accept the current microserver exception variant in server_abort so these tests pass consistently on Fedora 43.
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR improves determinism in the thread_config gold test by ensuring the thread-validation helper (check_threads.py) does not run until the corresponding ATS instance is actually accepting connections on its configured port, eliminating a startup-order race in parallel autest runs.

Changes:

  • Add per-run readiness gating so each check_threads.py invocation waits on When.PortOpen(ts.Variables.port) before proceeding.
  • Apply the same readiness condition consistently across all thread-configuration variants in the test.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Revert the thread_config PortOpen readiness change and keep ATS process
startup gating on its existing fully-initialized readiness behavior. For
post-early-return, move upstream readiness to server process Ready fields
instead of passing ready via StartBefore calls.
@bryancall bryancall changed the title Stabilize thread_config autest startup ordering Stabilize post and slow_post autests under parallel runs Feb 13, 2026
@apache apache deleted a comment from bryancall Feb 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants