Flaky: TestEventDrivenCollectionCoalescesPinReleases sweeps in two passes on a busy runner #444

Closed
opened 2026-10-18 12:58:26 +00:00 by rvnminers-A-and-N · 0 comments
Owner

The test from #429 releases three blobs with three store.Unpin calls and expects them collected in one sweep. The sweep runs gcChangeDebounce (100 ms) after the first release, and each Unpin writes and syncs the pin file. On a loaded runner the three writes took longer than that, so the collector swept 2 blocks and then 1, and the test failed with "collector did not sweep all released blobs" (seen on #439's run).

This is test timing, not a daemon bug: in a real pool a release that misses the window just gets the next sweep.

Fix: the test widens gcChangeDebounce to 2 s for itself, as the other debounce tests in pins_test.go already do.

The test from #429 releases three blobs with three `store.Unpin` calls and expects them collected in one sweep. The sweep runs `gcChangeDebounce` (100 ms) after the first release, and each Unpin writes and syncs the pin file. On a loaded runner the three writes took longer than that, so the collector swept 2 blocks and then 1, and the test failed with "collector did not sweep all released blobs" (seen on #439's run). This is test timing, not a daemon bug: in a real pool a release that misses the window just gets the next sweep. Fix: the test widens `gcChangeDebounce` to 2 s for itself, as the other debounce tests in pins_test.go already do.
Sign in to join this conversation.
No labels area:daemon bug testing
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Sisyphus/Sisyphus#444