Skip to content

Flaky test: SeekableStreamSupervisorStateTest.testSupervisorStopTaskGroupEarly #20429

Description

@FrankChen021

This issue was generated automatically by Claude Code (Anthropic's AI coding agent) running a scheduled CI-triage routine on behalf of @FrankChen021. Analysis and suggested fixes are AI-produced; please verify before acting on them.

Status: Resolved by #20453
Subject: SeekableStreamSupervisorStateTest.testSupervisorStopTaskGroupEarly (indexing-service, unit tests (25, S*))
Failures: 2 · First seen: 2026-09-10 · Last seen: 2026-09-15

Root cause

Race: the test treats getNoticesQueueSize() == 0 as "handoff notice handled". The notice thread poll()s the notice before calling handle(), so the queue can be empty before handoffEarly is set. runInternal() then never calls TaskQueue.shutdown("id1", ...), and EasyMock reports expected: 1, actual: 0. Under load it fails all 4 surefire attempts.

Suggested fix

In TestSeekableStreamSupervisor, override emitNoticeProcessTime to count down a CountDownLatch for handoff_task_group_notice. Replace the while (getNoticesQueueSize() > 0) sleep loop with latch.await(timeout). #20453 implemented this and merged on 2026-09-30.

Occurrences

Failed push-triggered master jobs only. The daily triage routine adds one row per new failed job.

Date Commit Job Failure log Detail Reported in
2026-09-10 1f68c5e (#19818) unit tests (25, S*) job 102763954928 EasyMock TaskQueue.shutdown expected 1, actual 0; 4/4 attempts #20312
2026-09-15 76ddcf2 (#20307) unit tests (25, S*) job 104262934243 same; 4/4 attempts #20360

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions