You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Flaky: RpcTests Discovery_ReturnsFullTestCatalogue times out waiting for TCP connection on macOS CI #7230
failed Discovery_ReturnsFullTestCatalogue(net8·0) (1m 01s 071ms)
TUnit.Engine.Exceptions.TestFailedException: [Test Failure] TimeoutException: Timeout waiting for TCP connection after 60s on port 49344
at TUnit.RpcTests.TestHostSession.AcceptWithTimeoutAsync(...) in /_/tests/TUnit.RpcTests/TestHostSession.cs:103
The same commit passed on ubuntu and windows, and the PR does not touch the RPC/server-mode path. At the same time the macOS runner was running the native AOT publishes (PublishTestProjectAOTModule had been running for 20 minutes), so the spawned test host most likely did not start and connect within 60 seconds on a saturated runner.
Where
tests/TUnit.RpcTests/TestHostSession.cs, AcceptWithTimeoutAsync (fixed 60 s accept timeout).
Repro
Intermittent; seen on macOS CI under load. Not reproduced locally.
Expected
RPC tests should not fail because the host is slow to start on a busy runner. Options: a longer accept timeout on CI, or not running RPC tests in parallel with the AOT publishes (PR #7226 moves the AOT publishes into their own workflow, which may be enough on its own).
Closing: the contention this flake came from is gone. #7226 (245c17c, merged 2026-10-20) moved the native AOT publishes into aot.yml, and dotnet.yml now runs the pipeline with ignore-categories: Aot. So the macOS modularpipeline job no longer runs PublishTestProjectAOTModule alongside RunRpcTestsModule. The two most recent failed dotnet.yml runs on main (41211887596 on macOS, 41311511530 on Windows) did not fail in the RPC tests. If Timeout waiting for TCP connection shows up again, reopen this issue and raise the accept timeout in tests/TUnit.RpcTests/TestHostSession.cs.
Activity
thomhurst commentedon Nov 1, 2026
Closing: the contention this flake came from is gone. #7226 (245c17c, merged 2026-10-20) moved the native AOT publishes into
aot.yml, anddotnet.ymlnow runs the pipeline withignore-categories: Aot. So the macOSmodularpipelinejob no longer runsPublishTestProjectAOTModulealongsideRunRpcTestsModule. The two most recent faileddotnet.ymlruns onmain(41211887596 on macOS, 41311511530 on Windows) did not fail in the RPC tests. IfTimeout waiting for TCP connectionshows up again, reopen this issue and raise the accept timeout intests/TUnit.RpcTests/TestHostSession.cs.