Repository navigation
Node.js crashed with the following stacktrace #29435
Description
Activity
Even though this is a different backtrace, it may be the same underlying issue as #29353.
- addedhttp2Issues and PRs related to the http2 subsystem.Issues and PRs related to the http2 subsystem.
on Sep 4, 2019 @nodejs/http2
@jsloop42 would you mind to add a way to reproduce this crash?
Could you try using Node 10 and see if the issue persists?
I’ve looked into this, but with the limited information available, I’d say either this is also addressed by #29399, or we need more information (e.g. a reproduction, a core dump, etc.).
@jsloop42 Thanks, but a reproduction or a core dump or something along those lines would really be more helpful. The npm debug log doesn’t really say more than that there was an error.
I'm still having a similar problem when receiving a lot of messages from @google-cloud/pubsub.
I'm on 8.16.2 and can reproduce fairly easily.* thread #1, name = 'node', stop reason = signal SIGABRT * frame #0: libc.so.6`__GI_raise(sig=2) at raise.c:51 frame #1: libc.so.6`__GI_abort at abort.c:79 frame #2: 0x00007ffeb7355461 node`node::Abort() + 33 frame #3: 0x00007ffeb735587b node`node::Assert(char const* const (*) [4]) + 123 frame #4: 0x00007ffeb738f81a node`node::http2::Http2Session::OnStreamAllocImpl(unsigned long, uv_buf_t*, void*) + 106 frame #5: 0x00007ffeb742860a node`node::TLSWrap::ClearOut() + 154 frame #6: 0x00007ffeb7428dee node`node::TLSWrap::OnReadImpl(long, uv_buf_t const*, uv_handle_type, void*) + 174 frame #7: 0x00007ffeb73dc87c node`node::LibuvStreamWrap::OnRead(uv_stream_s*, long, uv_buf_t const*) + 124 frame #8: node`uv__read(stream=<unavailable>) at stream.c:1257 frame #9: node`uv__stream_io(loop=<unavailable>, w=<unavailable>, events=<unavailable>) at stream.c:1324 frame #10: node`uv__io_poll(loop=<unavailable>, timeout=<unavailable>) at linux-core.c:375 frame #11: node`uv_run(loop=<unavailable>, mode=<unavailable>) at core.c:370 frame #12: 0x00007ffeb735eb65 node`node::Start(uv_loop_s*, int, char const* const*, int, char const* const*) + 1205 frame #13: 0x00007ffeb735dda0 node`node::Start(int, char**) + 352 frame #14: libc.so.6`__libc_start_main(main=(node`main), argc=5, argv=0x00007ffeb6e5fcb8, init=<unavailable>, fini=<unavailable>, rtld_fini=<unavailable>, stack_end=0x00007ffeb6e5fca8) at libc-start.c:310 frame #15: 0x00007ffeb7327601 node`_start + 41 thread #2, stop reason = signal 0 frame #0: 0x00007f23d5b829f3 libpthread.so.0`__pthread_cond_wait + 579 frame #1: node`uv_cond_wait(cond=<unavailable>, mutex=<unavailable>) at thread.c:735 frame #2: 0x00007ffeb73ad234 node`node::BackgroundRunner(void*) + 116 frame #3: 0x00007f23d5b7c6db libpthread.so.0`start_thread + 219 frame #4: libc.so.6`__GI___clone at clone.S:95 thread #3, stop reason = signal 0 frame #0: 0x00007f23d5b856d6 libpthread.so.0`do_futex_wait.constprop.1 + 54 frame #1: 0x00007f23d5b857c8 libpthread.so.0`__new_sem_wait_slow.constprop.0 + 152 frame #2: node`uv_sem_wait at thread.c:579 frame #3: node`uv_sem_wait(sem=<unavailable>) at thread.c:635 frame #4: 0x00007ffeb73f7eda node`node::inspector::(anonymous namespace)::StartIoThreadMain(void*) + 26 frame #5: 0x00007f23d5b7c6db libpthread.so.0`start_thread + 219 frame #6: libc.so.6`__GI___clone at clone.S:95 thread #4, stop reason = signal 0 frame #0: 0x00007f23d5b829f3 libpthread.so.0`__pthread_cond_wait + 579 frame #1: node`uv_cond_wait(cond=<unavailable>, mutex=<unavailable>) at thread.c:735 frame #2: node`worker(arg=<unavailable>) at threadpool.c:76 frame #3: 0x00007f23d5b7c6db libpthread.so.0`start_thread + 219 frame #4: libc.so.6`__GI___clone at clone.S:95 thread #5, stop reason = signal 0 frame #0: 0x00007f23d5b829f3 libpthread.so.0`__pthread_cond_wait + 579 frame #1: node`uv_cond_wait(cond=<unavailable>, mutex=<unavailable>) at thread.c:735 frame #2: node`worker(arg=<unavailable>) at threadpool.c:76 frame #3: 0x00007f23d5b7c6db libpthread.so.0`start_thread + 219 frame #4: libc.so.6`__GI___clone at clone.S:95 thread #6, stop reason = signal 0 frame #0: 0x00007f23d5b829f3 libpthread.so.0`__pthread_cond_wait + 579 frame #1: node`uv_cond_wait(cond=<unavailable>, mutex=<unavailable>) at thread.c:735 frame #2: node`worker(arg=<unavailable>) at threadpool.c:76 frame #3: 0x00007f23d5b7c6db libpthread.so.0`start_thread + 219 frame #4: libc.so.6`__GI___clone at clone.S:95 thread #7, stop reason = signal 0 frame #0: 0x00007f23d5b829f3 libpthread.so.0`__pthread_cond_wait + 579 frame #1: node`uv_cond_wait(cond=<unavailable>, mutex=<unavailable>) at thread.c:735 frame #2: 0x00007ffeb73ad234 node`node::BackgroundRunner(void*) + 116 frame #3: 0x00007f23d5b7c6db libpthread.so.0`start_thread + 219 frame #4: libc.so.6`__GI___clone at clone.S:95 thread #8, stop reason = signal 0 frame #0: 0x00007f23d5b829f3 libpthread.so.0`__pthread_cond_wait + 579 frame #1: node`uv_cond_wait(cond=<unavailable>, mutex=<unavailable>) at thread.c:735 frame #2: node`worker(arg=<unavailable>) at threadpool.c:76 frame #3: 0x00007f23d5b7c6db libpthread.so.0`start_thread + 219 frame #4: libc.so.6`__GI___clone at clone.S:95 thread #9, stop reason = signal 0 frame #0: 0x00007f23d5b829f3 libpthread.so.0`__pthread_cond_wait + 579 frame #1: node`uv_cond_wait(cond=<unavailable>, mutex=<unavailable>) at thread.c:735 frame #2: 0x00007ffeb73ad234 node`node::BackgroundRunner(void*) + 116 frame #3: 0x00007f23d5b7c6db libpthread.so.0`start_thread + 219 frame #4: libc.so.6`__GI___clone at clone.S:95 thread #10, stop reason = signal 0 frame #0: libc.so.6`__GI_epoll_pwait(epfd=11, events=0x00007f23d1de6850, maxevents=1024, timeout=-1, set=0x0000000000000000) at epoll_pwait.c:42 frame #1: node`uv__io_poll(loop=<unavailable>, timeout=<unavailable>) at linux-core.c:275 frame #2: node`uv_run(loop=<unavailable>, mode=<unavailable>) at core.c:370 frame #3: 0x00007ffeb73fcbc4 node`void node::inspector::InspectorIo::ThreadMain<node::inspector::InspectorSocketServer>() + 596 frame #4: 0x00007f23d5b7c6db libpthread.so.0`start_thread + 219 frame #5: libc.so.6`__GI___clone at clone.S:95 thread #11, stop reason = signal 0 frame #0: 0x00007f23d5b829f3 libpthread.so.0`__pthread_cond_wait + 579 frame #1: node`uv_cond_wait(cond=<unavailable>, mutex=<unavailable>) at thread.c:735 frame #2: 0x00007ffeb73ad234 node`node::BackgroundRunner(void*) + 116 frame #3: 0x00007f23d5b7c6db libpthread.so.0`start_thread + 219 frame #4: libc.so.6`__GI___clone at clone.S:95I have same crash when use pubsub subscription.
Updated to 10.18.0. Everything is ok there. But Node 10 is Beta in Google Cloud Functions.
Reacted by Shaun Luttin@dobromyslov thanks for your confirmation.
Node.js v8.x is end-of-life and won't receive any fixes anymore. I am closing this, since the issue seems to be specific about v8.x. If it does happen on any other release line, please leave a comment so that this is reopened.
Node.js crashes before sending response with the below stack trace.
The server uses Firestore as the backend. Kindly let me know how to fix this.