Title: Signal SIGSEGV in v8::internal::GlobalHandles::Create(v8::internal::Object*) () · Issue #393 · nodejs/node-addon-api · GitHub
Open Graph Title: Signal SIGSEGV in v8::internal::GlobalHandles::Create(v8::internal::Object*) () · Issue #393 · nodejs/node-addon-api
X Title: Signal SIGSEGV in v8::internal::GlobalHandles::Create(v8::internal::Object*) () · Issue #393 · nodejs/node-addon-api
Description: Hi! I've noticed some crashes sporadically occurring in v8 when calling the constructor of a class from the OnOK handler of AsyncWorkers. The crashes only seem to affect node 10.x (tested on 10.5, 10.13, 9.11.2). I'm running node-addon-a...
Open Graph Description: Hi! I've noticed some crashes sporadically occurring in v8 when calling the constructor of a class from the OnOK handler of AsyncWorkers. The crashes only seem to affect node 10.x (tested on 10.5, ...
X Description: Hi! I've noticed some crashes sporadically occurring in v8 when calling the constructor of a class from the OnOK handler of AsyncWorkers. The crashes only seem to affect node 10.x (tested on 10...
Opengraph URL: https://github.com/nodejs/node-addon-api/issues/393
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Signal SIGSEGV in v8::internal::GlobalHandles::Create(v8::internal::Object*) ()","articleBody":"Hi!\r\n\r\nI've noticed some crashes sporadically occurring in v8 when calling the constructor of a class from the OnOK handler of `AsyncWorker`s. The crashes only seem to affect node 10.x (tested on 10.5, 10.13, 9.11.2). I'm running `node-addon-api` 1.6.0\r\n\r\n\r\n\u003cdetails\u003e\u003csummary\u003eStack trace: (gdb)\u003c/summary\u003e\r\n\u003cp\u003e\r\n\r\n```\r\nThread 1 \"node\" received signal SIGSEGV, Segmentation fault.\r\n0x0000000000e92f8b in v8::internal::GlobalHandles::Create(v8::internal::Object*) ()\r\n(gdb) bt\r\n#0 0x0000000000e92f8b in v8::internal::GlobalHandles::Create(v8::internal::Object*) ()\r\n#1 0x0000000000ad8138 in v8::V8::GlobalizeReference(v8::internal::Isolate*, v8::internal::Object**) ()\r\n#2 0x00000000008e62fd in (anonymous namespace)::v8impl::Reference::New(napi_env__*, v8::Local\u003cv8::Value\u003e, unsigned int, bool, void (*)(napi_env__*, void*, void*), void*, void*) ()\r\n#3 0x00000000008ee37f in napi_wrap ()\r\n#4 0x00007fffdfdf2d7e in Napi::ObjectWrap\u003cDarknetImage\u003e::ObjectWrap (this=0x2568890, callbackInfo=...) at /home/ubuntu/darknet-binding/node_modules/node-addon-api/napi-inl.h:2824\r\n#5 0x00007fffdfdf021a in DarknetImage::DarknetImage (this=0x2568890, info=...) at ../src/DarknetImage.cc:37\r\n#6 0x00007fffdfdf4954 in Napi::ObjectWrap\u003cDarknetImage\u003e::ConstructorCallbackWrapper(napi_env__*, napi_callback_info__*)::{lambda()#1}::operator()() const (__closure=0x7fffffff96b0)\r\n at /home/ubuntu/darknet-binding/node_modules/node-addon-api/napi-inl.h:3221\r\n#7 0x00007fffdfdf51e7 in Napi::details::WrapCallback\u003cNapi::ObjectWrap\u003cDarknetImage\u003e::ConstructorCallbackWrapper(napi_env__*, napi_callback_info__*)::{lambda()#1}\u003e(Napi::ObjectWrap\u003cDarknetImage\u003e::ConstructorCallbackWrapper(napi_env__*, napi_callback_info__*)::{lambda()#1}) (callback=...) at /home/ubuntu/darknet-binding/node_modules/node-addon-api/napi-inl.h:104\r\n#8 0x00007fffdfdf4a85 in Napi::ObjectWrap\u003cDarknetImage\u003e::ConstructorCallbackWrapper (env=0x25f93a0, info=0x7fffffff9730) at /home/ubuntu/darknet-binding/node_modules/node-addon-api/napi-inl.h:3219\r\n#9 0x00000000008e6905 in (anonymous namespace)::v8impl::FunctionCallbackWrapper::Invoke(v8::FunctionCallbackInfo\u003cv8::Value\u003e const\u0026) ()\r\n#10 0x0000000000b5e71b in v8::internal::MaybeHandle\u003cv8::internal::Object\u003e v8::internal::(anonymous namespace)::HandleApiCallHelper\u003ctrue\u003e(v8::internal::Isolate*, v8::internal::Handle\u003cv8::internal::HeapObject\u003e, v8::internal::Handle\u003cv8::internal::HeapObject\u003e, v8::internal::Handle\u003cv8::internal::FunctionTemplateInfo\u003e, v8::internal::Handle\u003cv8::internal::Object\u003e, v8::internal::BuiltinArguments) ()\r\n#11 0x0000000000b60a7d in v8::internal::Builtins::InvokeApiFunction(v8::internal::Isolate*, bool, v8::internal::Handle\u003cv8::internal::HeapObject\u003e, v8::internal::Handle\u003cv8::internal::Object\u003e, int, v8::internal::Handle\u003cv8::internal::Object\u003e*, v8::internal::Handle\u003cv8::internal::HeapObject\u003e) ()\r\n#12 0x0000000000e702b1 in v8::internal::Execution::New(v8::internal::Isolate*, v8::internal::Handle\u003cv8::internal::Object\u003e, v8::internal::Handle\u003cv8::internal::Object\u003e, int, v8::internal::Handle\u003cv8::internal::Object\u003e*) ()\r\n#13 0x0000000000afc9e6 in v8::Function::NewInstanceWithSideEffectType(v8::Local\u003cv8::Context\u003e, int, v8::Local\u003cv8::Value\u003e*, v8::SideEffectType) const ()\r\n#14 0x0000000000afcd1c in v8::Function::NewInstance(v8::Local\u003cv8::Context\u003e, int, v8::Local\u003cv8::Value\u003e*) const ()\r\n#15 0x00000000008ef175 in napi_new_instance ()\r\n#16 0x00007fffdfde360c in Napi::Function::New (this=0x7fffffff9dc0, argc=4, args=0x7fffffff9ed0) at /home/ubuntu/darknet-binding/node_modules/node-addon-api/napi-inl.h:1747\r\n#17 0x00007fffdfde35b9 in Napi::Function::New (this=0x7fffffff9dc0, args=...) at /home/ubuntu/darknet-binding/node_modules/node-addon-api/napi-inl.h:1737\r\n#18 0x00007fffdfde4258 in Napi::FunctionReference::New (this=0x7fffdffff320 \u003cDarknetImage::constructor\u003e, args=...) at /home/ubuntu/darknet-binding/node_modules/node-addon-api/napi-inl.h:2521\r\n#19 0x00007fffdfdf1eab in DarknetImageWorkers::RGB2DarknetImage::OnOK (this=0x1c8519c0) at ../src/DarknetImage.h:108\r\n#20 0x00007fffdfde532d in Napi::AsyncWorker::OnWorkComplete(napi_env__*, napi_status, void*)::{lambda()#1}::operator()() const (__closure=0x7fffffff9fa8)\r\n at /home/ubuntu/darknet-binding/node_modules/node-addon-api/napi-inl.h:3622\r\n#21 0x00007fffdfde6391 in Napi::details::WrapCallback\u003cNapi::AsyncWorker::OnWorkComplete(napi_env__*, napi_status, void*)::{lambda()#1}\u003e(Napi::AsyncWorker::OnWorkComplete(napi_env__*, napi_status, void*)::{lambda()#1}) (\r\n callback=...) at /home/ubuntu/darknet-binding/node_modules/node-addon-api/napi-inl.h:104\r\n#22 0x00007fffdfde5435 in Napi::AsyncWorker::OnWorkComplete (status=napi_ok, this_pointer=0x1c8519c0) at /home/ubuntu/darknet-binding/node_modules/node-addon-api/napi-inl.h:3620\r\n#23 0x00000000008e6e4c in (anonymous namespace)::uvimpl::Work::AfterThreadPoolWork(int) ()\r\n#24 0x0000000000a42fb5 in uv__work_done (handle=0x24a3f50 \u003cdefault_loop_struct+176\u003e) at ../deps/uv/src/threadpool.c:313\r\n#25 0x0000000000a4732f in uv__async_io (loop=0x24a3ea0 \u003cdefault_loop_struct\u003e, w=\u003coptimized out\u003e, events=\u003coptimized out\u003e) at ../deps/uv/src/unix/async.c:118\r\n#26 0x0000000000a58018 in uv__io_poll (loop=loop@entry=0x24a3ea0 \u003cdefault_loop_struct\u003e, timeout=-1) at ../deps/uv/src/unix/linux-core.c:375\r\n#27 0x0000000000a47c6b in uv_run (loop=0x24a3ea0 \u003cdefault_loop_struct\u003e, mode=UV_RUN_DEFAULT) at ../deps/uv/src/unix/core.c:370\r\n#28 0x00000000008e5255 in node::Start(v8::Isolate*, node::IsolateData*, std::vector\u003cstd::string, std::allocator\u003cstd::string\u003e \u003e const\u0026, std::vector\u003cstd::string, std::allocator\u003cstd::string\u003e \u003e const\u0026) ()\r\n#29 0x00000000008e34a2 in node::Start(int, char**) ()\r\n#30 0x00007ffff6a96b97 in __libc_start_main (main=0x89dc10 \u003cmain\u003e, argc=2, argv=0x7fffffffe328, init=\u003coptimized out\u003e, fini=\u003coptimized out\u003e, rtld_fini=\u003coptimized out\u003e, stack_end=0x7fffffffe318) at ../csu/libc-start.c:310\r\n#31 0x000000000089dd45 in _start ()\r\n\r\n(gdb) frame 4\r\n#4 0x00007fffdfdf2d7e in Napi::ObjectWrap\u003cDarknetImage\u003e::ObjectWrap (this=0x2568890, callbackInfo=...) at /home/ubuntu/darknet-binding/node_modules/node-addon-api/napi-inl.h:2824\r\n2824\t status = napi_wrap(env, wrapper, instance, FinalizeCallback, nullptr, \u0026ref);\r\n\r\n(gdb) info local\r\nenv = 0x25f93a0\r\nwrapper = 0x7fffffff9980\r\nstatus = napi_ok\r\nref = 0x25f93a0\r\ninstance = 0x2568890\r\ninstanceRef = 0x25f93a0\r\nenv = \u003coptimized out\u003e\r\nwrapper = \u003coptimized out\u003e\r\nstatus = \u003coptimized out\u003e\r\nref = \u003coptimized out\u003e\r\ninstance = \u003coptimized out\u003e\r\ninstanceRef = \u003coptimized out\u003e\r\n\r\n(gdb) info args\r\nthis = 0x2568890\r\ncallbackInfo = @0x7fffffff95b0: {_staticArgCount = 6, _env = 0x25f93a0, _info = 0x7fffffff9730, _this = 0x7fffffff9980, _argc = 4, _argv = 0x7fffffff95e0, _staticArgs = {0x7fffffff9978, 0x7fffffff9970, 0x7fffffff9968,\r\n 0x7fffffff9960, 0x24dd768, 0x24dd768}, _dynamicArgs = 0x0, _data = 0x0}\r\n(gdb)\r\n```\r\n\r\n\u003c/p\u003e\r\n\u003c/details\u003e\r\n\r\n\u003cbr/\u003e\r\n\r\nI've put together a list to the best of my knowledge resembling the code path from the stack trace:\r\n\r\nframe 4: https://github.com/nodejs/node-addon-api/blob/master/napi-inl.h#L2824\r\n\r\nframe 5: https://github.com/legraphista/darknet-binding/blob/089917035a5b188197a3f71b6f7bc2a87fa3604b/src/DarknetImage.cc#L37\r\n\r\nframe 19: https://github.com/legraphista/darknet-binding/blob/089917035a5b188197a3f71b6f7bc2a87fa3604b/src/DarknetImage.h#L102\r\n\r\nHas this happened to anyone else, or am I doing funky stuff i shouldn't be doing?\r\n\r\nThanks","author":{"url":"https://github.com/legraphista","@type":"Person","name":"legraphista"},"datePublished":"2018-11-09T12:17:24.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":19},"url":"https://github.com/393/node-addon-api/issues/393"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:00c053c9-5e5d-1103-8228-a741fcb2a076 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | 91D6:79348:1AEC44E:24EDC4C:6A4EB1DB |
| html-safe-nonce | 95f3e6f6fe5ab2511300c2bb31908d9ba31b0a362938e587968942ff5eb06361 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI5MUQ2Ojc5MzQ4OjFBRUM0NEU6MjRFREM0Qzo2QTRFQjFEQiIsInZpc2l0b3JfaWQiOiI2MDMwNzUxMzc0MTE5MjAzNDciLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ== |
| visitor-hmac | 82577304c0b50fb491a7b5114bedbefa728e0e7b26b19bab4907d07708d736d4 |
| hovercard-subject-tag | issue:379140085 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/nodejs/node-addon-api/393/issue_layout |
| twitter:image | https://opengraph.githubassets.com/b435f8e472e48f4657aeb21d4dcfc2e02c47edb78bff16f28dc6b08c67814954/nodejs/node-addon-api/issues/393 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/b435f8e472e48f4657aeb21d4dcfc2e02c47edb78bff16f28dc6b08c67814954/nodejs/node-addon-api/issues/393 |
| og:image:alt | Hi! I've noticed some crashes sporadically occurring in v8 when calling the constructor of a class from the OnOK handler of AsyncWorkers. The crashes only seem to affect node 10.x (tested on 10.5, ... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | legraphista |
| hostname | github.com |
| expected-hostname | github.com |
| None | 41b6ab3ba6d20a71766ac245b5a4a94c6fc672a9cd4da7d44c1b33ab8bf6a21c |
| turbo-cache-control | no-preview |
| go-import | github.com/nodejs/node-addon-api git https://github.com/nodejs/node-addon-api.git |
| octolytics-dimension-user_id | 9950313 |
| octolytics-dimension-user_login | nodejs |
| octolytics-dimension-repository_id | 81384578 |
| octolytics-dimension-repository_nwo | nodejs/node-addon-api |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 81384578 |
| octolytics-dimension-repository_network_root_nwo | nodejs/node-addon-api |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | e6a744804e8e70f97b4d5a18a94dcc63db22f97a |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width