Skip to content

Conversation

@danbev
Copy link
Contributor

@danbevdanbev commented May 25, 2021

Currently test/node-api/test_fatal/test_threads.js fails for a Debug
build with the following error:

# # Fatal error in ../deps/v8/src/execution/isolate.h, line 579 # Debug check failed: (isolate) != nullptr. # # # #FailureMessage Object: 0x7f055effca10 1: 0x101e3f8 node::DumpBacktrace(_IO_FILE*) [/node/out/Debug/node] 2: 0x11c31ed [/node/out/Debug/node] 3: 0x11c320d [/node/out/Debug/node] 4: 0x2ba4448 V8_Fatal(char const*, int, char const*, ...) [/node/out/Debug/node] 5: 0x2ba4473 [/node/out/Debug/node] 6: 0x139e049 v8::internal::Isolate::Current() [/node/out/Debug/node] 7: 0x11025ee node::OnFatalError(char const*, char const*) [/node/out/Debug/node] 8: 0x1102564 node::FatalError(char const*, char const*) [/node/out/Debug/node] 9: 0x10add1d napi_open_callback_scope [/node/out/Debug/node]10: 0x7f05664211dc [/node/test/node-api/test_fatal/build/Debug/test_fatal.node]11: 0x7f056608e4e2 [/usr/lib64/libpthread.so.0]12: 0x7f0565fbd6c3 clone [/usr/lib64/libc.so.6]node:assert:412 throw err; ^AssertionError [ERR_ASSERTION]: The expression evaluated to a falsy value: assert.ok(p.status === 134 || p.signal === 'SIGABRT') at Object.<anonymous> (/node/test/node-api/test_fatal/test_threads.js:21:8) at Module._compile (node:internal/modules/cjs/loader:1109:14) at Object.Module._extensions..js (node:internal/modules/cjs/loader:1138:10) at Module.load (node:internal/modules/cjs/loader:989:32) at Function.Module._load (node:internal/modules/cjs/loader:829:14) at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:79:12) at node:internal/main/run_main_module:17:47{ generatedMessage: true, code: 'ERR_ASSERTION', actual: false, expected: true, operator: '=='}

This is caused by a call to Isolate::GetCurrent() when the calling
thread has not initialized V8. We are working suggestion to add a method
to V8 which allows a check/get without any checks but in the mean time
this change should allow debug builds to pass the test suit.

Refs: https://chromium-review.googlesource.com/c/v8/v8/+/2910630

Currently test/node-api/test_fatal/test_threads.js fails for a Debug build with the following error: # # Fatal error in ../deps/v8/src/execution/isolate.h, line 579 # Debug check failed: (isolate) != nullptr. # # # #FailureMessage Object: 0x7f055effca10 1: 0x101e3f8 node::DumpBacktrace(_IO_FILE*) [/node/out/Debug/node] 2: 0x11c31ed [/node/out/Debug/node] 3: 0x11c320d [/node/out/Debug/node] 4: 0x2ba4448 V8_Fatal(char const*, int, char const*, ...) [/node/out/Debug/node] 5: 0x2ba4473 [/node/out/Debug/node] 6: 0x139e049 v8::internal::Isolate::Current() [/node/out/Debug/node] 7: 0x11025ee node::OnFatalError(char const*, char const*) [/node/out/Debug/node] 8: 0x1102564 node::FatalError(char const*, char const*) [/node/out/Debug/node] 9: 0x10add1d napi_open_callback_scope [/node/out/Debug/node] 10: 0x7f05664211dc [/node/test/node-api/test_fatal/build/Debug/test_fatal.node] 11: 0x7f056608e4e2 [/usr/lib64/libpthread.so.0] 12: 0x7f0565fbd6c3 clone [/usr/lib64/libc.so.6] node:assert:412 throw err; ^ AssertionError [ERR_ASSERTION]: The expression evaluated to a falsy value: assert.ok(p.status === 134 || p.signal === 'SIGABRT') at Object.<anonymous> (/node/test/node-api/test_fatal/test_threads.js:21:8) at Module._compile (node:internal/modules/cjs/loader:1109:14) at Object.Module._extensions..js (node:internal/modules/cjs/loader:1138:10) at Module.load (node:internal/modules/cjs/loader:989:32) at Function.Module._load (node:internal/modules/cjs/loader:829:14) at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:79:12) at node:internal/main/run_main_module:17:47{generatedMessage: true, code: 'ERR_ASSERTION', actual: false, expected: true, operator: '==' } This is caused by a call to Isolate::GetCurrent() when the calling thread has not initialized V8. We are working suggestion to add a method to V8 which allows a check/get without any checks but in the mean time this change should allow debug builds to pass the test suit.
@github-actionsgithub-actionsbot added needs-ci PRs that need a full CI run. test Issues and PRs related to the tests. labels May 25, 2021
@nodejs-github-bot
Copy link
Collaborator

@nodejs-github-bot
Copy link
Collaborator

Copy link
Member

@mhdawsonmhdawson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@nodejs-github-bot
Copy link
Collaborator

danbev added a commit that referenced this pull request Jun 8, 2021
Currently test/node-api/test_fatal/test_threads.js fails for a Debug build with the following error: 1: 0x101e3f8 node::DumpBacktrace(_IO_FILE*) [/node/out/Debug/node] 2: 0x11c31ed [/node/out/Debug/node] 3: 0x11c320d [/node/out/Debug/node] 4: 0x2ba4448 V8_Fatal(char const*, int, char const*, ...) [/node/out/Debug/node] 5: 0x2ba4473 [/node/out/Debug/node] 6: 0x139e049 v8::internal::Isolate::Current() [/node/out/Debug/node] 7: 0x11025ee node::OnFatalError(char const*, char const*) [/node/out/Debug/node] 8: 0x1102564 node::FatalError(char const*, char const*) [/node/out/Debug/node] 9: 0x10add1d napi_open_callback_scope [/node/out/Debug/node] 10: 0x7f05664211dc [/node/test/node-api/test_fatal/build/Debug/test_fatal.node] 11: 0x7f056608e4e2 [/usr/lib64/libpthread.so.0] 12: 0x7f0565fbd6c3 clone [/usr/lib64/libc.so.6] node:assert:412 throw err; ^ AssertionError [ERR_ASSERTION]: The expression evaluated to a falsy value: assert.ok(p.status === 134 || p.signal === 'SIGABRT') at Object.<anonymous> (/node/test/node-api/test_fatal/test_threads.js:21:8) at Module._compile (node:internal/modules/cjs/loader:1109:14) at Object.Module._extensions..js (node:internal/modules/cjs/loader:1138:10) at Module.load (node:internal/modules/cjs/loader:989:32) at Function.Module._load (node:internal/modules/cjs/loader:829:14) at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:79:12) at node:internal/main/run_main_module:17:47{generatedMessage: true, code: 'ERR_ASSERTION', actual: false, expected: true, operator: '==' } This is caused by a call to Isolate::GetCurrent() when the calling thread has not initialized V8. We are working suggestion to add a method to V8 which allows a check/get without any checks but in the mean time this change should allow debug builds to pass the test suit. PR-URL: #38805 Refs: https://chromium-review.googlesource.com/c/v8/v8/+/2910630 Reviewed-By: Michael Dawson <[email protected]> Reviewed-By: James M Snell <[email protected]>
@danbev
Copy link
ContributorAuthor

Landed in 1fc4d43.

@danbevdanbev closed this Jun 8, 2021
@danbevdanbev deleted the test_fatal_test_threads branch June 8, 2021 06:05
targos pushed a commit that referenced this pull request Jun 11, 2021
Currently test/node-api/test_fatal/test_threads.js fails for a Debug build with the following error: 1: 0x101e3f8 node::DumpBacktrace(_IO_FILE*) [/node/out/Debug/node] 2: 0x11c31ed [/node/out/Debug/node] 3: 0x11c320d [/node/out/Debug/node] 4: 0x2ba4448 V8_Fatal(char const*, int, char const*, ...) [/node/out/Debug/node] 5: 0x2ba4473 [/node/out/Debug/node] 6: 0x139e049 v8::internal::Isolate::Current() [/node/out/Debug/node] 7: 0x11025ee node::OnFatalError(char const*, char const*) [/node/out/Debug/node] 8: 0x1102564 node::FatalError(char const*, char const*) [/node/out/Debug/node] 9: 0x10add1d napi_open_callback_scope [/node/out/Debug/node] 10: 0x7f05664211dc [/node/test/node-api/test_fatal/build/Debug/test_fatal.node] 11: 0x7f056608e4e2 [/usr/lib64/libpthread.so.0] 12: 0x7f0565fbd6c3 clone [/usr/lib64/libc.so.6] node:assert:412 throw err; ^ AssertionError [ERR_ASSERTION]: The expression evaluated to a falsy value: assert.ok(p.status === 134 || p.signal === 'SIGABRT') at Object.<anonymous> (/node/test/node-api/test_fatal/test_threads.js:21:8) at Module._compile (node:internal/modules/cjs/loader:1109:14) at Object.Module._extensions..js (node:internal/modules/cjs/loader:1138:10) at Module.load (node:internal/modules/cjs/loader:989:32) at Function.Module._load (node:internal/modules/cjs/loader:829:14) at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:79:12) at node:internal/main/run_main_module:17:47{generatedMessage: true, code: 'ERR_ASSERTION', actual: false, expected: true, operator: '==' } This is caused by a call to Isolate::GetCurrent() when the calling thread has not initialized V8. We are working suggestion to add a method to V8 which allows a check/get without any checks but in the mean time this change should allow debug builds to pass the test suit. PR-URL: #38805 Refs: https://chromium-review.googlesource.com/c/v8/v8/+/2910630 Reviewed-By: Michael Dawson <[email protected]> Reviewed-By: James M Snell <[email protected]>
@danielleadamsdanielleadams mentioned this pull request Jun 14, 2021
@richardlau
Copy link
Member

Backport blocked on #38624.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs-ciPRs that need a full CI run.testIssues and PRs related to the tests.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants

@danbev@nodejs-github-bot@richardlau@jasnell@mhdawson