Skip to content

tests/stress: fix two 3008.x branch-build flakes - #70324

Open
dwoz wants to merge 1 commit into
saltstack:3008.xfrom
dwoz:dwoz/fix/3008x-stress-tests-branch-build
Open

dwoz wants to merge 1 commit into
saltstack:3008.xfrom
dwoz:dwoz/fix/3008x-stress-tests-branch-build

Conversation

@dwoz

@dwoz dwoz commented Sep 25, 2026

Copy link
Copy Markdown
Contributor

test_requester_disconnect_midflight_leaves_worker_alive was racing against libzmq's redelivery of a buffered reply after DEALER identity change: the 2 s drain would time out, then the follow-up send_recv would receive the redelivered stale reply keyed to "drop-me" instead of the freshly requested "after-reconnect". Send the follow-up first and drain replies until we see the one keyed to the fresh id; redelivery timing is no longer part of the assertion path.

test_requester_churn_fd_bounded stalled at "warm0" because the fake worker REP had connected but not yet completed its ROUTER<->DEALER handshake with the proxy's inner DEALER when the first REQ arrived, so the request sat in the DEALER's queue with no routable peer. Warm the pipeline with a probe round-trip before the churn loop so the worker is a registered peer of the inner DEALER; the FD-bound assertions run against a live pipeline as intended.

test_requester_disconnect_midflight_leaves_worker_alive was racing
against libzmq's redelivery of a buffered reply after DEALER identity
change: the 2 s drain would time out, then the follow-up send_recv
would receive the redelivered stale reply keyed to "drop-me" instead
of the freshly requested "after-reconnect".  Send the follow-up first
and drain replies until we see the one keyed to the fresh id;
redelivery timing is no longer part of the assertion path.

test_requester_churn_fd_bounded stalled at "warm0" because the fake
worker REP had connected but not yet completed its ROUTER<->DEALER
handshake with the proxy's inner DEALER when the first REQ arrived,
so the request sat in the DEALER's queue with no routable peer.  Warm
the pipeline with a probe round-trip before the churn loop so the
worker is a registered peer of the inner DEALER; the FD-bound
assertions run against a live pipeline as intended.

This branch was successfully deployed

1 active deployment
ci — 7c6d4bdd Deployed Sep 25, 2026 by dwoz via Build Onedir Packages / DEB (arm64) #27242
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

test:full Run the full test suite

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants