Skip to content

Periodic failures with parallel/test-child-process-stdout-flush-exit #61393

Description

@grahamc

Test

parallel/test-child-process-stdout-flush-exit

Platform

Linux ARM64

Console output

2026-01-15T19:40:03.5158785Z     not ok 572 parallel/test-child-process-stdout-flush-exit
2026-01-15T19:40:03.5158846Z       ---
2026-01-15T19:40:03.5159008Z       duration_ms: 418.60800
2026-01-15T19:40:03.5159093Z       severity: fail
2026-01-15T19:40:03.5159158Z       exitcode: 1
2026-01-15T19:40:03.5159224Z       stack: |-
2026-01-15T19:40:03.5159287Z         node:assert:90
2026-01-15T19:40:03.5159370Z           throw new AssertionError(obj);
2026-01-15T19:40:03.5159426Z           ^
2026-01-15T19:40:03.5159799Z         
2026-01-15T19:40:03.5160025Z         AssertionError [ERR_ASSERTION]: Expected values to be strictly equal:
2026-01-15T19:40:03.5160103Z         + actual - expected
2026-01-15T19:40:03.5160161Z         
2026-01-15T19:40:03.5160227Z         + '\nfiller\n'
2026-01-15T19:40:03.5160288Z         - 'goodbye\n'
2026-01-15T19:40:03.5160616Z             at ChildProcess.<anonymous> (/build/node-v20.19.6/test/parallel/test-child-process-stdout-flush-exit.js:54:12)
2026-01-15T19:40:03.5160814Z             at ChildProcess.<anonymous> (/build/node-v20.19.6/test/common/index.js:474:15)
2026-01-15T19:40:03.5160926Z             at ChildProcess.emit (node:events:524:28)
2026-01-15T19:40:03.5161053Z             at maybeClose (node:internal/child_process:1104:16)
2026-01-15T19:40:03.5161228Z             at ChildProcess._handle.onexit (node:internal/child_process:304:5) {
2026-01-15T19:40:03.5161308Z           generatedMessage: true,
2026-01-15T19:40:03.5161380Z           code: 'ERR_ASSERTION',
2026-01-15T19:40:03.5161452Z           actual: '\nfiller\n',
2026-01-15T19:40:03.5161523Z           expected: 'goodbye\n',
2026-01-15T19:40:03.5161601Z           operator: 'strictEqual'
2026-01-15T19:40:03.5161658Z         }
2026-01-15T19:40:03.5161717Z         
2026-01-15T19:40:03.5161783Z         Node.js v20.19.6

Build links

  • (none public, sorry)

Additional information

I'm not sure if this is the right place to report this. However, we ran into this flaky test when building Node on a machine with a high core count and a lot of other compilation jobs happening.

Activity

  1. added
    flaky-testIssues and PRs involving tests that fail intermittently in CI.
    on Jan 15, 2026
  2. changed the title [-]Periodic[/-] [+]Periodic failures with parallel/test-child-process-stdout-flush-exit[/+] on Jan 15, 2026
  3. LocutusOfBorg commented on Jan 16, 2026

    @LocutusOfBorg

    Hello, I see this at least on amd64 on Ubuntu 26.04 (20.19.4)
    And I also have logs:
    https://autopkgtest.ubuntu.com/results/autopkgtest-resolute/resolute/amd64/n/nodejs/20260115_194106_96c3b@/log.gz

  4. Han5991 commented on Mar 8, 2026

    @Han5991
    Contributor

    This flaky issue was inadvertently fixed by PR #62020 (specifically commit f951acf).

    The root cause was the explicit process.exit(0) call. Under high load, when the stdout pipe buffer gets full, console.log('goodbye') becomes asynchronous. The immediate process.exit(0) forced the process to terminate before the event loop could flush the remaining buffer, cutting off the output.

    Since PR #62020 removed that unnecessary process.exit(0), the process now naturally waits for the I/O event loop to drain, so this race condition will no longer occur. I believe this issue can be safely closed.

  5. github-actions commented on Jul 20, 2026

    @github-actions
    Contributor

    This issue has been marked as stale due to 90 days of inactivity.
    It will be automatically closed in 30 days if no further activity occurs. If this is still relevant, please leave a comment or update it to keep it open.

  6. added
    staleIssues and PRs marked stale due to inactivity and scheduled for automatic closure.
    on Jul 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    flaky-testIssues and PRs involving tests that fail intermittently in CI.linuxIssues and PRs related to the Linux platform.staleIssues and PRs marked stale due to inactivity and scheduled for automatic closure.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions