Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Illegal Instruction in core in debugger dev tools #12024

Closed
zwhitchcox opened this issue Mar 24, 2017 · 5 comments
Closed

Illegal Instruction in core in debugger dev tools #12024

zwhitchcox opened this issue Mar 24, 2017 · 5 comments
Labels
inspector Issues and PRs related to the V8 inspector protocol

Comments

@zwhitchcox
Copy link

zwhitchcox commented Mar 24, 2017

Version: 7.6.0
Platform: Linux localhost 3.14.0 #1 SMP PREEMPT Sat Mar 18 09:19:20 PDT 2017 x86_64 x86_64 x86_64 GNU/Linux
Subsystem: debugger devtools

Seems to happen randomly in the code when running express, but this is the output from the stack trace:

#
# Fatal error in ../deps/v8/src/objects.cc, line 3044
# Check failed: receiver->IsJSFunction().
#

==== C stack trace ===============================

    node(v8::base::debug::StackTrace::StackTrace()+0x16) [0x1579626]
    node(V8_Fatal+0xd6) [0x1574346]
    node() [0xfd37cf]
    node(v8::Object::CreationContext()+0x11) [0xaaa221]
    node() [0x153b691]
    node(v8_inspector::copyValueFromDebuggerContext(v8::Isolate*, v8::Local<v8::Context>, v8::Local<v8::Context>, v8::Local<v8::Value>)+0x1488) [0x153ce28]
    node(v8_inspector::V8Debugger::functionScopes(v8::Local<v8::Context>, v8::Local<v8::Function>)+0xcd) [0x151f95d]
    node(v8_inspector::V8Debugger::internalProperties(v8::Local<v8::Context>, v8::Local<v8::Value>)+0x179) [0x1520059]
    node(v8_inspector::V8RuntimeAgentImpl::getProperties(v8_inspector::String16*, v8_inspector::String16 const&, v8_inspector::protocol::Maybe<bool> const&, v8_inspector::protocol::Maybe<boo
l> const&, v8_inspector::protocol::Maybe<bool> const&, std::unique_ptr<v8_inspector::protocol::Array<v8_inspector::protocol::Runtime::PropertyDescriptor>, std::default_delete<v8_inspector::p
rotocol::Array<v8_inspector::protocol::Runtime::PropertyDescriptor> > >*, v8_inspector::protocol::Maybe<v8_inspector::protocol::Array<v8_inspector::protocol::Runtime::InternalPropertyDescrip
tor> >*, v8_inspector::protocol::Maybe<v8_inspector::protocol::Runtime::ExceptionDetails>*)+0x139) [0x14acec9]
    node(v8_inspector::protocol::Runtime::DispatcherImpl::getProperties(int, std::unique_ptr<v8_inspector::protocol::DictionaryValue, std::default_delete<v8_inspector::protocol::DictionaryVa
lue> >, v8_inspector::protocol::ErrorSupport*)+0x3c6) [0x14ed566]
    node(v8_inspector::protocol::Runtime::DispatcherImpl::dispatch(int, v8_inspector::String16 const&, std::unique_ptr<v8_inspector::protocol::DictionaryValue, std::default_delete<v8_inspect
or::protocol::DictionaryValue> >)+0xaf) [0x14ef89f]
    node(v8_inspector::protocol::UberDispatcher::dispatch(std::unique_ptr<v8_inspector::protocol::Value, std::default_delete<v8_inspector::protocol::Value> >)+0x49a) [0x14bce0a]
    node(v8_inspector::V8InspectorSessionImpl::dispatchProtocolMessage(v8_inspector::StringView const&)+0x22) [0x1497982]
    node() [0x1316f3a]
    node(v8::platform::DefaultPlatform::PumpMessageLoop(v8::Isolate*)+0x187) [0x1343c07]
    node(node::inspector::V8NodeInspector::runMessageLoopOnPause(int)+0x60) [0x13196b0]
    node(v8_inspector::V8Debugger::handleProgramBreak(v8::Local<v8::Context>, v8::Local<v8::Object>, v8::Local<v8::Value>, v8::Local<v8::Array>, bool)+0x2bc) [0x1521c3c]
    node(v8_inspector::V8Debugger::v8DebugEventCallback(v8::Debug::EventDetails const&)+0x551) [0x15270c1]
    node(v8::internal::Debug::CallEventCallback(v8::DebugEvent, v8::internal::Handle<v8::internal::Object>, v8::internal::Handle<v8::internal::Object>, v8::Debug::ClientData*)+0x1b8) [0xe26d
58]
    node(v8::internal::Debug::ProcessDebugEvent(v8::DebugEvent, v8::internal::Handle<v8::internal::JSObject>, bool)+0xc1) [0xe27e81]
    node(v8::internal::Debug::OnDebugBreak(v8::internal::Handle<v8::internal::Object>, bool)+0xaa) [0xe27f7a]
    node(v8::internal::Debug::Break(v8::internal::JavaScriptFrame*)+0x39d) [0xe2863d]
    node(v8::internal::Runtime_DebugBreak(int, v8::internal::Object**, v8::internal::Isolate*)+0x7a) [0x10f781a]
    [0xdece91043a7]
Illegal instruction (core dumped)
@joshgav
Copy link
Contributor

joshgav commented Mar 24, 2017

cc @nodejs/v8-inspector @eugeneo

@joshgav joshgav added the inspector Issues and PRs related to the V8 inspector protocol label Mar 24, 2017
@bnoordhuis
Copy link
Member

You wouldn't happen to be using ES6 proxies in your application or your dependencies? I suspect you are hitting this assertion: https://github.com/nodejs/node/blob/v7.7.4/deps/v8/src/objects.cc#L3044 (warning: big file)

@zwhitchcox
Copy link
Author

No, I'm not using proxies....it even happens on ES5

@Trott
Copy link
Member

Trott commented Jul 31, 2017

Any idea if this still happens with Node.js 8.x?

@TimothyGu
Copy link
Member

@zwhitchcox, if this still happens on v8.x please comment and reopen (if GitHub allows you to do so), preferably while providing a reproducible test case. I'll close this for now to avoid inactive issues from piling up.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
inspector Issues and PRs related to the V8 inspector protocol
Projects
None yet
Development

No branches or pull requests

5 participants