node-v8 icon indicating copy to clipboard operation
node-v8 copied to clipboard

some tests failing with recently added v8 DCHECK

Open nornagon opened this issue 3 years ago • 4 comments

This CL seems to be causing some tests to fail: https://chromium-review.googlesource.com/c/v8/v8/+/3610624

e.g. parallel/test-vm-timeout-escape-promise-2

#
# Fatal error in ../../v8/src/execution/microtask-queue.cc, line 183
# Debug check failed: isolate->has_scheduled_exception() implies maybe_result.is_null() && maybe_exception.is_null().
#
#
#
#FailureMessage Object: 0x16f7091a8
 1: 0x11c105254 node::NodePlatform::GetStackTracePrinter()::$_3::__invoke() [/Users/jeremy.rose/work/electron/src/out/testing/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
 2: 0x119091f80 V8_Fatal(char const*, int, char const*, ...) [/Users/jeremy.rose/work/electron/src/out/testing/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
 3: 0x119091c10 std::__1::enable_if<!std::is_function<std::__1::remove_pointer<unsigned char>::type>::value && !std::is_enum<unsigned char>::value && has_output_operator<unsigned char, v8::base::CheckMessageStream>::value, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::type v8::base::PrintCheckOperand<unsigned char>(unsigned char) [/Users/jeremy.rose/work/electron/src/out/testing/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
 4: 0x1154e2578 v8::internal::MicrotaskQueue::RunMicrotasks(v8::internal::Isolate*) [/Users/jeremy.rose/work/electron/src/out/testing/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
 5: 0x1154e2170 v8::internal::MicrotaskQueue::PerformCheckpointInternal(v8::Isolate*) [/Users/jeremy.rose/work/electron/src/out/testing/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
 6: 0x11c08fb60 node::contextify::ContextifyScript::EvalMachine(node::Environment*, long long, bool, bool, bool, std::__1::shared_ptr<v8::MicrotaskQueue>, v8::FunctionCallbackInfo<v8::Value> const&) [/Users/jeremy.rose/work/electron/src/out/testing/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
 7: 0x11c08f170 node::contextify::ContextifyScript::RunInContext(v8::FunctionCallbackInfo<v8::Value> const&) [/Users/jeremy.rose/work/electron/src/out/testing/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
 8: 0x1152be500 v8::internal::FunctionCallbackArguments::Call(v8::internal::CallHandlerInfo) [/Users/jeremy.rose/work/electron/src/out/testing/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
 9: 0x1152bcb58 v8::internal::MaybeHandle<v8::internal::Object> v8::internal::(anonymous namespace)::HandleApiCallHelper<false>(v8::internal::Isolate*, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::FunctionTemplateInfo>, v8::internal::Handle<v8::internal::Object>, v8::internal::BuiltinArguments) [/Users/jeremy.rose/work/electron/src/out/testing/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
10: 0x1152baa60 v8::internal::Builtin_Impl_HandleApiCall(v8::internal::BuiltinArguments, v8::internal::Isolate*) [/Users/jeremy.rose/work/electron/src/out/testing/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
11: 0x1152ba3f8 v8::internal::Builtin_HandleApiCall(int, unsigned long*, v8::internal::Isolate*) [/Users/jeremy.rose/work/electron/src/out/testing/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
12: 0x124bfee426c
13: 0x124bfe4fce4
14: 0x124bfe4fce4
15: 0x124bfe4fce4
16: 0x124bfe4fce4
17: 0x124bfe4fce4
18: 0x124bfe4fce4
19: 0x124bfe4fce4
20: 0x124bfe4fce4
21: 0x124bfe4fce4
22: 0x124bfe4fce4
23: 0x124bfe4fce4
24: 0x124bfe4fce4
25: 0x124bfe4fce4
26: 0x124bfe4fce4
27: 0x124bfe4d8ac
28: 0x124bfe4d548
29: 0x11549ca4c v8::internal::(anonymous namespace)::Invoke(v8::internal::Isolate*, v8::internal::(anonymous namespace)::InvokeParams const&) [/Users/jeremy.rose/work/electron/src/out/testing/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
30: 0x11549baf0 v8::internal::Execution::Call(v8::internal::Isolate*, v8::internal::Handle<v8::internal::Object>, v8::internal::Handle<v8::internal::Object>, int, v8::internal::Handle<v8::internal::Object>*) [/Users/jeremy.rose/work/electron/src/out/testing/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
31: 0x11520638c v8::Function::Call(v8::Local<v8::Context>, v8::Local<v8::Value>, int, v8::Local<v8::Value>*) [/Users/jeremy.rose/work/electron/src/out/testing/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
32: 0x11c0455cc node::ExecuteBootstrapper(node::Environment*, char const*, std::__1::vector<v8::Local<v8::String>, std::__1::allocator<v8::Local<v8::String> > >*, std::__1::vector<v8::Local<v8::Value>, std::__1::allocator<v8::Local<v8::Value> > >*) [/Users/jeremy.rose/work/electron/src/out/testing/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
33: 0x11c046590 node::StartExecution(node::Environment*, char const*) [/Users/jeremy.rose/work/electron/src/out/testing/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
34: 0x11c046460 node::StartExecution(node::Environment*, std::__1::function<v8::MaybeLocal<v8::Value> (node::StartExecutionCallbackInfo const&)>) [/Users/jeremy.rose/work/electron/src/out/testing/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
35: 0x11c00631c node::LoadEnvironment(node::Environment*, std::__1::function<v8::MaybeLocal<v8::Value> (node::StartExecutionCallbackInfo const&)>) [/Users/jeremy.rose/work/electron/src/out/testing/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
36: 0x113f72630 electron::NodeMain(int, char**) [/Users/jeremy.rose/work/electron/src/out/testing/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
37: 0x113d7ec7c ElectronInitializeICUandStartNode [/Users/jeremy.rose/work/electron/src/out/testing/Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework]
38: 0x100ad1088

cc @targos

nornagon avatar May 11 '22 14:05 nornagon

@nodejs/vm

targos avatar May 11 '22 16:05 targos

Is this still an issue? I don't see those tests failing on my machine.

targos avatar Jul 18 '22 13:07 targos

Hm, I'm still seeing failures in Electron: https://app.circleci.com/pipelines/github/electron/electron/55690/workflows/19d3b308-dc54-40c7-a938-e288958fce86/jobs/1269643/steps?invite=true#step-106-10743

nornagon avatar Jul 20 '22 22:07 nornagon

Is it fixed by https://github.com/nodejs/node-v8/commit/0c8582a5b45d2402ee889f1a7a20baf6a2e984f8 ?

targos avatar Jan 10 '24 13:01 targos

I assume this is fixed now.

targos avatar Apr 23 '24 05:04 targos