Skip to content

flake: Test_localSub_init/CrossSubjectListenerIsolation #1552

Closed
coder/coder
#26084

Description

@flake-investigator

CI Run Link: https://github.com/coder/coder/actions/runs/26576090091
Failing Job: https://github.com/coder/coder/actions/runs/26576090091/job/78296339738 (test-go-pg-17)
Failure time: 2026-05-28T13:08:36Z (same window as Slack alert)

Commit Info:

  • SHA: 12520ee964270e561e0e1b75b765a4194c159c4a
  • Author: Danny Kopping
  • Commit: coder/coder@12520ee

Failure evidence:

=== FAIL: coderd/x/nats Test_localSub_init/CrossSubjectListenerIsolation (25.04s)
    pubsub_internal_test.go:321:
        Error Trace: /home/runner/work/coder/coder/coderd/x/nats/pubsub_internal_test.go:321
        Error:       Condition never satisfied
        Test:        Test_localSub_init/CrossSubjectListenerIsolation

Error analysis:

  • The failing assertion is the require.Eventually that expects fastCount >= total in Test_localSub_init/CrossSubjectListenerIsolation.
  • This indicates the fast subscriber did not receive all expected messages within testutil.WaitLong when a slow subscriber is blocked, despite the test expecting isolation.

Root cause classification:

  • Likely flaky test / timing/backpressure in the NATS local pubsub implementation when a slow subscriber blocks and a fast subscriber should still drain.

Data race / panic / OOM checks:

  • No WARNING: DATA RACE, panic:, or OOM indicators observed in the job logs around the failure.

Precise assignment analysis:

  • Intended blame command:
    • git blame -L 316,333 coderd/x/nats/pubsub_internal_test.go
  • Recent file history:
    • git log --oneline -10 --follow coderd/x/nats/pubsub_internal_test.go
    • Most recent substantive change: f6f284e “feat: add initial NATS implementation (#25602)” by Jon Ayers.
  • Jon Ayers corresponds to GitHub user @sreya per team mapping.

Assignment:

  • Best candidate: @sreya (owner of initial NATS implementation; please reassign if ownership differs).

Related issues search (coder/internal):

  • "Test_localSub_init"
  • "CrossSubjectListenerIsolation"
  • "pubsub_internal_test.go" / "coderd/x/nats"
  • "Condition never satisfied"
    No matches found.

Reproduction (best effort):

go test ./coderd/x/nats -run Test_localSub_init/CrossSubjectListenerIsolation -count=1

Activity

  1. flake-investigator commented on May 28, 2026

    @flake-investigator
    Author

    New occurrence in main CI:

    Commit info:

    • SHA: 6df1536256475730d2fdba72083d3142c3089a25
    • Author: Cian Johnston
    • Commit: coder/coder@6df1536

    Failure evidence:

    === FAIL: coderd/x/nats Test_localSub_init/CrossSubjectListenerIsolation (25.06s)
        pubsub_internal_test.go:321:
            Error Trace: /home/runner/work/coder/coder/coderd/x/nats/pubsub_internal_test.go:321
            Error:       Condition never satisfied
            Test:        Test_localSub_init/CrossSubjectListenerIsolation
    

    No data race / panic / OOM indicators observed in the job logs around the failure.

  2. flake-investigator commented on May 28, 2026

    @flake-investigator
    Author

    New occurrence on main:

    CI Run Link: https://github.com/coder/coder/actions/runs/26586696037
    Failing Job: https://github.com/coder/coder/actions/runs/26586696037/job/78334548165 (test-go-pg-17, run_attempt 1)
    Commit: coder/coder@094fe97 (DevCats) - "chore(aibridge): add AWS PRM user-agent attribution for Bedrock calls (#25221)"

    Failure evidence:

    === FAIL: coderd/x/nats Test_localSub_init/CrossSubjectListenerIsolation (25.05s)
        pubsub_internal_test.go:321:
            Error: Condition never satisfied
    

    Notes:

    • No panic/OOM/data race indicators found in the retrieved logs.
  3. flake-investigator commented on May 31, 2026

    @flake-investigator
    Author

    New occurrence:

    Commit Info:

    • SHA: 9c111a2be2ed87490083a1224e86f04cb7bcc6ba
    • Author: Dean Sheather
    • Commit: coder/coder@9c111a2

    Failure evidence:

    === FAIL: coderd/x/nats Test_localSub_init/CrossSubjectListenerIsolation (25.05s)
        pubsub_internal_test.go:316:
            Error Trace: /home/runner/work/coder/coder/coderd/x/nats/pubsub_internal_test.go:316
            Error:       Condition never satisfied
            Test:        Test_localSub_init/CrossSubjectListenerIsolation
    

    Notes:

    • Same failure signature as before (fast subscriber did not reach total within testutil.WaitLong).
    • No data race warnings, panic traces, or OOM indicators found in the job logs around the failure.
  4. flake-investigator commented on Jun 1, 2026

    @flake-investigator
    Author

    New occurrence:

    Failure evidence:

    === FAIL: coderd/x/nats Test_localSub_init/CrossSubjectListenerIsolation (25.04s)
        pubsub_internal_test.go:316:
            Error Trace: /home/runner/work/coder/coder/coderd/x/nats/pubsub_internal_test.go:316
            Error:       Condition never satisfied
            Test:        Test_localSub_init/CrossSubjectListenerIsolation
    

    Notes:

    • No panic, OOM, or data race warnings observed in this run’s logs around the failure.
    • Most recent substantive change in this test came from 5cdc9e2 “feat: add nats cluster peer support (#25632)” (Jon Ayers), which refactored this test and nearby helpers.
  5. flake-investigator commented on Jun 2, 2026

    @flake-investigator
    Author

    New occurrence in main:

    Commit:

    Failure evidence:

    === FAIL: coderd/x/nats Test_localSub_init/CrossSubjectListenerIsolation (25.05s)
        pubsub_internal_test.go:316:
            Error: Condition never satisfied
    

    Root cause signal: flaky timing/backpressure in local NATS pubsub test (fast subscriber did not satisfy eventually condition).

  6. flake-investigator commented on Jun 2, 2026

    @flake-investigator
    Author

    New occurrence on main:

    Commit:

    Failure evidence:

    === FAIL: coderd/x/nats Test_localSub_init/CrossSubjectListenerIsolation (25.04s)
        pubsub_internal_test.go:316:
            Error Trace: /home/runner/work/coder/coder/coderd/x/nats/pubsub_internal_test.go:316
            Error:       Condition never satisfied
            Test:        Test_localSub_init/CrossSubjectListenerIsolation
    

    Notes:

    • Same failure signature as prior occurrences (Condition never satisfied in CrossSubjectListenerIsolation).
    • No data race, panic, or OOM indicators observed in the job logs around the failure.
  7. flake-investigator commented on Jun 3, 2026

    @flake-investigator
    Author

    New occurrence:

    Failure evidence:

    === FAIL: coderd/x/nats Test_localSub_init/CrossSubjectListenerIsolation (25.04s)
        pubsub_internal_test.go:316:
            Error:       Condition never satisfied
    

    No WARNING: DATA RACE, panic, or OOM indicators observed in the job logs around the failure.

  8. flake-investigator commented on Jun 4, 2026

    @flake-investigator
    Author

    New occurrence in test-go-pg (ubuntu-latest).

    CI Run: https://github.com/coder/coder/actions/runs/26942567262
    Failing job: https://github.com/coder/coder/actions/runs/26942567262/job/79487446261
    Failure time: 2026-06-04T09:22:37Z

    Commit:

    Failure evidence:

    === FAIL: coderd/x/nats Test_localSub_init/CrossSubjectListenerIsolation (25.06s)
        pubsub_internal_test.go:317:
            Error:       Condition never satisfied
    

    The failing line is the require.Eventually waiting for fastCount >= total (line 317 in coderd/x/nats/pubsub_internal_test.go).

    Notes:

    • No data race, panic, or OOM indicators observed in this job’s logs.
    • File history still points to 5cdc9e28a984 (“feat: add nats cluster peer support”) as the most recent substantive change to this test, so current assignment still looks correct.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions