Skip to content

Flaky crash on worker-addon-exit test #63923

Description

@aduh95

Test

worker-addon-exit

Platform

No response

Console output

=== release test ===
Path: addons/worker-addon-exit/test
Error: --- stderr ---
#  out/Release/node[101420]: void node::RemoveEnvironmentCleanupHook(v8::Isolate*, CleanupHook, void*) at ../../src/api/hooks.cc:130
  #  Assertion failed: (env) != nullptr

----- Native stack trace -----

 1: 0xaacfbe1b7978 node::DumpNativeBacktrace(_IO_FILE*) [out/Release/node]
 2: 0xaacfbe37374c node::Assert(node::AssertionInfo const&) [out/Release/node]
 3: 0xaacfbe0e209c node::RemoveEnvironmentCleanupHook(v8::Isolate*, void (*)(void*), void*) [out/Release/node]
 4: 0xffe7f81e2338 MyObject::~MyObject() [/home/runner/work/_temp/node-v27.0.0-nightly2026-06-14a8b15d8975-slim/test/addons/worker-addon-exit/build/Release/binding.node]
 5: 0xffe7f81e2390 MyObject::~MyObject() [/home/runner/work/_temp/node-v27.0.0-nightly2026-06-14a8b15d8975-slim/test/addons/worker-addon-exit/build/Release/binding.node]
 6: 0xaacfbead1f78  [out/Release/node]
 7: 0xaacfbeb80558  [out/Release/node]
 8: 0xaacfbeb80e90  [out/Release/node]
 9: 0xaacfbeb839c4  [out/Release/node]
10: 0xaacfbf32d240  [out/Release/node]
11: 0xaacfbeb817ac  [out/Release/node]
12: 0xaacfbeb4e4d4  [out/Release/node]
13: 0xaacfbeb4e90c  [out/Release/node]
14: 0xaacfbeb1f840  [out/Release/node]
15: 0xaacfbf500298  [out/Release/node]
16: 0xaacfc1072c8c  [out/Release/node]
Command: out/Release/node /home/runner/work/_temp/node-v27.0.0-nightly2026-06-14a8b15d8975-slim/test/addons/worker-addon-exit/test.js
--- CRASHED (Signal: 6) ---

===
=== 1 tests failed
=== 1 tests CRASHED
===

Build links

Additional information

Looking at https://github.com/nodejs/reliability/issues?q=is%3Aissue%20state%3Aopen%20addons%2Fworker-addon-exit%2Ftest, it seems to be happening since June 6th

Activity

  1. added
    flaky-testIssues and PRs involving tests that fail intermittently in CI.
    on Jun 15, 2026
  2. aduh95 commented on Jun 15, 2026

    @aduh95
    ContributorAuthor

    It was also reported in #63642 (comment), the PR that introduced this test. Looks like the test failed in that PR (https://ci.nodejs.org/job/node-test-commit-linux-containered/56671/nodes=ubi81_sharedlibs_openssl111fips_x64/console) but it wasn't noticed during review unfortunately

  3. changed the title [-]Falky crash on worker-addon-exit test[/-] [+]Flaky crash on worker-addon-exit test[/+] on Jun 15, 2026
  4. addaleax commented on Jun 15, 2026

    @addaleax
    Member
    [110:37|% 100|+ 600000|-   0]: Done        
    
    All tests passed.
    

    600k runs without a reproduction 😓 It would be lovely to get a better stack trace here for actually pinpointing where this is coming from. I guess the simplest fix would be to use an async cleanup hook instead of the synchronous one, where the current Environment* isn't required to be on-context, but this does admittedly point to a bit of a usability problem with cleanup hooks in their current form

  5. santigimeno commented on Jun 16, 2026

    @santigimeno
    Member

    Happened to have a debug build around and could reproduce it with: tools/test.py -j32 --repeat=128 addons/worker-addon-exit/test.js. It seems to me your assessment is correct: when gc runs we're not in-context anymore. Here's the bt: https://gist.github.com/santigimeno/0cb38039629aeca161c8656442aca96f. Let me know if you need more info (I have the coredump)

  6. addaleax commented on Jun 18, 2026

    @addaleax
    Member

    #63985 should hopefully address this

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.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions