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

async_wrap,inspect: heap snapshot CHECKs in WrapperInfo #18256

Closed
bnoordhuis opened this issue Jan 19, 2018 · 0 comments
Closed

async_wrap,inspect: heap snapshot CHECKs in WrapperInfo #18256

bnoordhuis opened this issue Jan 19, 2018 · 0 comments
Labels
inspector Issues and PRs related to the V8 inspector protocol

Comments

@bnoordhuis
Copy link
Member

With master. Sometimes the first few tries work but eventually it hits the CHECK:

$ ./out/Release/node inspect -p 0
Debugger listening on ws://127.0.0.1:9229/89ddfed3-65f0-4169-b700-b854f9a7d459
For help see https://nodejs.org/en/docs/inspector
connecting to 127.0.0.1:9229 ...Debugger attached.
debug> takeHeapSnapshot()
Heap snapshot: 0/0./out/Release/node[6798]: ../src/async_wrap.cc:131:v8::RetainedObjectInfo* node::WrapperInfo(uint16_t, v8::Local<v8::Value>): Assertion `(nullptr) != (wrap)' failed.
 1: node::Abort() [./out/Release/node]
 2: 0x5636489b3f48 [./out/Release/node]
 3: 0x563648984904 [./out/Release/node]
 4: v8::internal::GlobalHandlesExtractor::VisitPersistentHandle(v8::Persistent<v8::Value, v8::NonCopyablePersistentTraits<v8::Value> >*, unsigned short) [./out/Release/node]
 5: v8::internal::GlobalHandles::IterateAllRootsWithClassIds(v8::PersistentHandleVisitor*) [./out/Release/node]
 6: 0x563649166490 [./out/Release/node]
 7: v8::internal::HeapSnapshotGenerator::GenerateSnapshot() [./out/Release/node]
 8: v8::internal::HeapProfiler::TakeSnapshot(v8::ActivityControl*, v8::HeapProfiler::ObjectNameResolver*) [./out/Release/node]
 9: v8_inspector::V8HeapProfilerAgentImpl::takeHeapSnapshot(v8_inspector::protocol::Maybe<bool>) [./out/Release/node]
10: v8_inspector::protocol::HeapProfiler::DispatcherImpl::takeHeapSnapshot(int, std::unique_ptr<v8_inspector::protocol::DictionaryValue, std::default_delete<v8_inspector::protocol::DictionaryValue> >, v8_inspector::protocol::ErrorSupport*) [./out/Release/node]
11: v8_inspector::protocol::HeapProfiler::DispatcherImpl::dispatch(int, v8_inspector::String16 const&, std::unique_ptr<v8_inspector::protocol::DictionaryValue, std::default_delete<v8_inspector::protocol::DictionaryValue> >) [./out/Release/node]
12: v8_inspector::protocol::UberDispatcher::dispatch(std::unique_ptr<v8_inspector::protocol::Value, std::default_delete<v8_inspector::protocol::Value> >) [./out/Release/node]
13: v8_inspector::V8InspectorSessionImpl::dispatchProtocolMessage(v8_inspector::StringView const&) [./out/Release/node]
14: 0x563648a6ced3 [./out/Release/node]
15: v8::internal::Isolate::InvokeApiInterruptCallbacks() [./out/Release/node]
16: v8::internal::StackGuard::HandleInterrupts() [./out/Release/node]
17: v8::internal::Runtime_StackGuard(int, v8::internal::Object**, v8::internal::Isolate*) [./out/Release/node]
18: 0x3d230bb8465d
Aborted (core dumped)

I think this may have been reported before but I can't find the bug report any more.

@bnoordhuis bnoordhuis added debugger inspector Issues and PRs related to the V8 inspector protocol labels Jan 19, 2018
bnoordhuis added a commit to bnoordhuis/io.js that referenced this issue Feb 21, 2018
Remove an erroneous CHECK that asserted the persistent object's internal
field pointer still pointed to a valid object.  If ClearWrap() has been
called, the field pointer equals nullptr and that is expected behavior.

Fixes: nodejs#18256
addaleax pushed a commit to addaleax/node that referenced this issue Feb 26, 2018
Remove an erroneous CHECK that asserted the persistent object's internal
field pointer still pointed to a valid object.  If ClearWrap() has been
called, the field pointer equals nullptr and that is expected behavior.

PR-URL: nodejs#18898
Fixes: nodejs#18256
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Joyee Cheung <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Matheus Marchini <[email protected]>
addaleax pushed a commit that referenced this issue Feb 26, 2018
Remove an erroneous CHECK that asserted the persistent object's internal
field pointer still pointed to a valid object.  If ClearWrap() has been
called, the field pointer equals nullptr and that is expected behavior.

PR-URL: #18898
Fixes: #18256
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Joyee Cheung <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Matheus Marchini <[email protected]>
MylesBorins pushed a commit that referenced this issue Apr 13, 2018
Remove an erroneous CHECK that asserted the persistent object's internal
field pointer still pointed to a valid object.  If ClearWrap() has been
called, the field pointer equals nullptr and that is expected behavior.

PR-URL: #18898
Fixes: #18256
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Joyee Cheung <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Matheus Marchini <[email protected]>
MayaLekova pushed a commit to MayaLekova/node that referenced this issue May 8, 2018
Remove an erroneous CHECK that asserted the persistent object's internal
field pointer still pointed to a valid object.  If ClearWrap() has been
called, the field pointer equals nullptr and that is expected behavior.

PR-URL: nodejs#18898
Fixes: nodejs#18256
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Joyee Cheung <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Matheus Marchini <[email protected]>
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

1 participant