Galaxy.Tests: remaining short fixed waits fail under heavy parallel load #858
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Found while verifying #856. Under extreme load (14 parallel full Galaxy.Tests runs + 14 CPU burners) 11/70 runs failed in tests with short fixed waits:
GatewayGalaxyAlarmFeedTests.Decodes_active_alarm_snapshot_then_live_transition(2 s, 6×),DeployWatcherTests(2 tests, 4×),GalaxyDriverSubscribeTests.SubscribeAsync_TwoSubscriptions_SameTag_FanOutOnePerSubscription,GalaxyDriverRawPathKeyingTests,EventPumpStreamFaultTests,ReconnectSupervisorTests. Never seen in normal serial runs (0/40 under 28 burners). Same class as #843: lengthen presence waits, use the self-diagnosingWaitUntilAsyncoverload added in #856, never assert absence by a short wait. Load scripts: a paralleldotnet testrunner loop.Fixed (
4fdc3708, test-only). Pushed to master ine857135e. Every failure was a 1–3 s wait on aTask.Runloop that hadn't been scheduled yet under thread-pool starvation; no production race (checked each). SharedTestWait(30 s, self-diagnosing), absence checks now use a positive control, fixed sleeps replaced by real signals. Before 16/70 runs failed (14 parallel + burners +ForceMinWorkerThreads=1), after 0/350.