stanford-oval / genie-server

The home server version of Almond
Apache License 2.0
268 stars 42 forks source link

Assertion pulsecore/pstream BrokenPipeError #41

Closed grewhit25 closed 4 years ago

grewhit25 commented 4 years ago

Almond Server v1.7.2 - Locally hosted. Home Assistant 0.103.5 Ubuntu 19.10 - headless server

Almond fails at random times after startup and never stay up for longer than for say 7 hours. You have to then manually restart the server which clearly is not practical.

The failure is always the same as shown in the logs below and points to pulseaudio but my research have not found a workable solution.

I start pulseaudio with the following command:

pulseaudio --log-level=4 --disallow-exit=true --exit-idle-time=-1 --start -vvvv

almond logs:

2019-12-31T01:17:23.041409287Z Assertion 're->data || re->memblock' failed at pulsecore/pstream.c:862, function do_read(). Aborting.
2019-12-31T01:17:23.426878888Z Traceback (most recent call last):
2019-12-31T01:17:23.426878888Z   File "/usr/local/bin/precise-engine", line 11, in <module>
2019-12-31T01:17:23.426878888Z     load_entry_point('mycroft-precise==0.3.0', 'console_scripts', 'precise-engine')()
2019-12-31T01:17:23.426878888Z   File "/usr/local/lib/python3.7/site-packages/precise/scripts/engine.py", line 58, in main
2019-12-31T01:17:23.426878888Z     sys.stdout.buffer.flush()
2019-12-31T01:17:23.426878888Z BrokenPipeError: [Errno 32] Broken pipe
2019-12-31T01:17:23.472230845Z error Command failed with signal "SIGABRT".
2019-12-31T01:17:23.473520449Z info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

system journal logs:

Dec 31 01:17:23 PlutoPi4 pulseaudio[13942]: hwbuf_unused=0
Dec 31 01:17:23 PlutoPi4 pulseaudio[13942]: setting avail_min=31886
Dec 31 01:17:23 PlutoPi4 pulseaudio[13942]: alsa_output.platform-soc_audio.stereo-fallback.monitor: state: RUNNING -> IDLE
Dec 31 01:17:23 PlutoPi4 pulseaudio[13942]: Hmm, no streams around, trying to vacuum.
Dec 31 01:17:23 PlutoPi4 pulseaudio[13942]: Freeing output 1 "node-stream"
Dec 31 01:17:23 PlutoPi4 pulseaudio[13942]: Freed 7 "thingengine-platform-server"
Dec 31 01:17:23 PlutoPi4 pulseaudio[13942]: Connection died.
Dec 31 01:17:23 PlutoPi4 pulseaudio[13942]: Freed 6 "libcanberra"
Dec 31 01:17:23 PlutoPi4 pulseaudio[13942]: Connection died.
gcampax commented 4 years ago

Hi! Thanks for your report. This appears to be a crash in https://github.com/stanford-oval/node-pulseaudio/ . I will investigate.

gcampax commented 4 years ago

By the way, if you could obtain a backtrace of the crashing node process, that would be really helpful.

To do so, you should install debug symbols for PulseAudio and related libraries (sudo apt install libpulse-dbg IIRC), then run Almond inside gdb. Use:

gdb --args node ./main.js

Type run to start the process, and let it run. When it crashes, gdb will return to a prompt, and you can obtain a backtrace with thread apply bt full.

Thank you!

grewhit25 commented 4 years ago

@gcampax Thanks for your reply. The only problem though is that I'm running almond in podman container, which makes setting up debugging a little bit complicated.

grewhit25 commented 4 years ago

For completeness my environment is:

Ubuntu 19.10 (Eoan Ermine) almond-server 1.7.2 fuse-overlayfs podman-composer version 0.1.6dev podman version 1.6.2

Container image created from the official Dockerfile with Fedora 30.

I was able to modify the container to allow me to exec into it and run gdb manually. However, libpulse-dbg as requested is not available under Fedora so I was not able capture any meaningful debug info this failure but it proves that we can debug from within the container.

Here is the list of available symbols we can choose from to gather more detailed backtrace.

Running gdb --args node ./main.js from within the container produced the following output on failure.


Assertion 're->data || re->memblock' failed at pulsecore/pstream.c:862, function do_read(). Aborting.

Thread 1 "node" received signal SIGABRT, Aborted.
0x0000fffff5fb9bd0 in raise () from /lib64/libc.so.6
Missing separate debuginfos, use: dnf debuginfo-install alsa-lib-1.2.1.2-3.fc30.aarch64 dbus-libs-1.12.16-1.fc30.aarch64 
flac-libs-1.3.2-10.fc30.aarch64 gsm-1.0.18-4.fc30.aarch64 http-parser-2.9.2-1.fc30.aarch64 libICE-1.0.9-15.fc30.aarch64 
libSM-1.2.3-2.fc30.aarch64 libX11-1.6.7-1.fc30.aarch64 libX11-xcb-1.6.7-1.fc30.aarch64 libXau-1.0.9-1.fc30.aarch64 
libXext-1.3.3-11.fc30.aarch64 libXi-1.7.10-1.fc30.aarch64 libXtst-1.2.3-9.fc30.aarch64 libasyncns-0.8-16.fc30.aarch64 
libcanberra-0.30-19.fc30.aarch64 libcap-2.26-5.fc30.aarch64 libgcc-9.2.1-1.fc30.aarch64 libgcrypt-1.8.5-1.fc30.aarch64 
libgpg-error-1.33-2.fc30.aarch64 libicu-63.2-2.fc30.aarch64 libnghttp2-1.39.2-1.fc30.aarch64 libogg-1.3.3-2.fc30.aarch64 
libsndfile-1.0.28-10.fc30.aarch64 libstdc++-9.2.1-1.fc30.aarch64 libtdb-1.3.18-1.fc30.aarch64 libtool-ltdl-2.4.6-29.fc30.aarch64 
libuuid-2.33.2-2.fc30.aarch64 libuv-1.34.0-1.fc30.aarch64 libvorbis-1.3.6-4.fc30.aarch64 libxcb-1.13.1-2.fc30.aarch64 
libxcrypt-4.4.10-1.fc30.aarch64 lz4-libs-1.9.1-1.fc30.aarch64 mimic-1.2.0.2-9.fc30.aarch64 openssl-libs-1.1.1d-2.fc30.aarch64 
pulseaudio-libs-12.2-9.fc30.aarch64 systemd-libs-241-12.git323cdf4.fc30.aarch64 xz-libs-5.2.4-5.fc30.aarch64 zlib-1.2.11-19.fc30.aarch6
(gdb)
(gdb)
(gdb) set logging file /var/lib/almond-server/pulsecore_backtrace.log
(gdb) set logging on
Copying output to /var/lib/almond-server/pulsecore_backtrace.log.
(gdb) thread apply all bt full

Thread 12 (Thread 0xffffc1bcd1b0 (LWP 101)):
#0  0x0000fffff61097f0 in pthread_cond_wait@@GLIBC_2.17 () from /lib64/libpthread.so.0
No symbol table info available.
#1  0x0000fffff5f110b4 in uv_cond_wait () from /lib64/libuv.so.1
No symbol table info available.
#2  0x0000fffff5f00640 in worker () from /lib64/libuv.so.1
No symbol table info available.
#3  0x0000fffff610379c in start_thread () from /lib64/libpthread.so.0
No symbol table info available.
#4  0x0000fffff605699c in thread_start () from /lib64/libc.so.6
No symbol table info available.

Thread 11 (Thread 0xffffc23ce1b0 (LWP 100)):
#0  0x0000fffff61097f0 in pthread_cond_wait@@GLIBC_2.17 () from /lib64/libpthread.so.0
No symbol table info available.
#1  0x0000fffff5f110b4 in uv_cond_wait () from /lib64/libuv.so.1
No symbol table info available.
#2  0x0000fffff5f00640 in worker () from /lib64/libuv.so.1
No symbol table info available.
#3  0x0000fffff610379c in start_thread () from /lib64/libpthread.so.0
No symbol table info available.
#4  0x0000fffff605699c in thread_start () from /lib64/libc.so.6
No symbol table info available.

Thread 10 (Thread 0xffffdcf7c1b0 (LWP 99)):
#0  0x0000fffff61097f0 in pthread_cond_wait@@GLIBC_2.17 () from /lib64/libpthread.so.0
No symbol table info available.
#1  0x0000fffff5f110b4 in uv_cond_wait () from /lib64/libuv.so.1
No symbol table info available.
#2  0x0000fffff5f00640 in worker () from /lib64/libuv.so.1
No symbol table info available.
--Type <RET> for more, q to quit, c to continue without paging--c
#3  0x0000fffff610379c in start_thread () from /lib64/libpthread.so.0
No symbol table info available.
#4  0x0000fffff605699c in thread_start () from /lib64/libc.so.6
No symbol table info available.

Thread 9 (Thread 0xffffdd77d1b0 (LWP 98)):
#0  0x0000fffff61097f0 in pthread_cond_wait@@GLIBC_2.17 () from /lib64/libpthread.so.0
No symbol table info available.
#1  0x0000fffff5f110b4 in uv_cond_wait () from /lib64/libuv.so.1
No symbol table info available.
#2  0x0000fffff5f00640 in worker () from /lib64/libuv.so.1
No symbol table info available.
#3  0x0000fffff610379c in start_thread () from /lib64/libpthread.so.0
No symbol table info available.
#4  0x0000fffff605699c in thread_start () from /lib64/libc.so.6
No symbol table info available.

Thread 8 (Thread 0xffffddf7e1b0 (LWP 97)):
#0  0x0000fffff604d7c4 in poll () from /lib64/libc.so.6
No symbol table info available.
#1  0x0000ffffee951180 in ?? () from /lib64/libpulse.so.0
No symbol table info available.
#2  0x0000ffffee943470 in pa_mainloop_poll () from /lib64/libpulse.so.0
No symbol table info available.
#3  0x0000ffffee943b3c in pa_mainloop_iterate () from /lib64/libpulse.so.0
No symbol table info available.
#4  0x0000ffffee943c08 in pa_mainloop_run () from /lib64/libpulse.so.0
No symbol table info available.
#5  0x0000ffffee9510d0 in ?? () from /lib64/libpulse.so.0
No symbol table info available.
#6  0x0000ffffee2c4804 in ?? () from /usr/lib64/pulseaudio/libpulsecommon-12.2.so
No symbol table info available.
#7  0x0000fffff610379c in start_thread () from /lib64/libpthread.so.0
No symbol table info available.
#8  0x0000fffff605699c in thread_start () from /lib64/libc.so.6
No symbol table info available.

Thread 7 (Thread 0xfffff40301b0 (LWP 95)):
#0  0x0000fffff610c0d0 in do_futex_wait.constprop () from /lib64/libpthread.so.0
No symbol table info available.
#1  0x0000fffff610c200 in __new_sem_wait_slow.constprop.0 () from /lib64/libpthread.so.0
No symbol table info available.
#2  0x0000fffff5f11144 in uv_sem_wait () from /lib64/libuv.so.1
No symbol table info available.
#3  0x0000fffff69266f8 in ?? () from /lib64/libnode.so.64
No symbol table info available.
#4  0x0000fffff610379c in start_thread () from /lib64/libpthread.so.0
No symbol table info available.
#5  0x0000fffff605699c in thread_start () from /lib64/libc.so.6
No symbol table info available.

Thread 6 (Thread 0xffffef7fe1b0 (LWP 94)):
#0  0x0000fffff61097f0 in pthread_cond_wait@@GLIBC_2.17 () from /lib64/libpthread.so.0
No symbol table info available.
#1  0x0000fffff5f110b4 in uv_cond_wait () from /lib64/libuv.so.1
No symbol table info available.
#2  0x0000fffff68c915c in ?? () from /lib64/libnode.so.64
No symbol table info available.
#3  0x0000fffff610379c in start_thread () from /lib64/libpthread.so.0
No symbol table info available.
#4  0x0000fffff605699c in thread_start () from /lib64/libc.so.6
No symbol table info available.

Thread 5 (Thread 0xffffeffff1b0 (LWP 93)):
#0  0x0000fffff61097f0 in pthread_cond_wait@@GLIBC_2.17 () from /lib64/libpthread.so.0
No symbol table info available.
#1  0x0000fffff5f110b4 in uv_cond_wait () from /lib64/libuv.so.1
No symbol table info available.
#2  0x0000fffff68c915c in ?? () from /lib64/libnode.so.64
No symbol table info available.
#3  0x0000fffff610379c in start_thread () from /lib64/libpthread.so.0
No symbol table info available.
#4  0x0000fffff605699c in thread_start () from /lib64/libc.so.6
No symbol table info available.

Thread 4 (Thread 0xfffff48311b0 (LWP 92)):
#0  0x0000fffff61097f0 in pthread_cond_wait@@GLIBC_2.17 () from /lib64/libpthread.so.0
No symbol table info available.
#1  0x0000fffff5f110b4 in uv_cond_wait () from /lib64/libuv.so.1
No symbol table info available.
#2  0x0000fffff68c915c in ?? () from /lib64/libnode.so.64
No symbol table info available.
#3  0x0000fffff610379c in start_thread () from /lib64/libpthread.so.0
No symbol table info available.
#4  0x0000fffff605699c in thread_start () from /lib64/libc.so.6
No symbol table info available.

Thread 3 (Thread 0xfffff50321b0 (LWP 91)):
#0  0x0000fffff61097f0 in pthread_cond_wait@@GLIBC_2.17 () from /lib64/libpthread.so.0
No symbol table info available.
#1  0x0000fffff5f110b4 in uv_cond_wait () from /lib64/libuv.so.1
No symbol table info available.
#2  0x0000fffff68c915c in ?? () from /lib64/libnode.so.64
No symbol table info available.
#3  0x0000fffff610379c in start_thread () from /lib64/libpthread.so.0
No symbol table info available.
#4  0x0000fffff605699c in thread_start () from /lib64/libc.so.6
No symbol table info available.

Thread 2 (Thread 0xfffff58331b0 (LWP 90)):
#0  0x0000fffff6056ac0 in epoll_pwait () from /lib64/libc.so.6
No symbol table info available.
#1  0x0000fffff5f1405c in uv.io_poll () from /lib64/libuv.so.1
No symbol table info available.
#2  0x0000fffff5f04b6c in uv_run () from /lib64/libuv.so.1
No symbol table info available.
#3  0x0000fffff68cc6f4 in node::BackgroundTaskRunner::DelayedTaskScheduler::Start()::{lambda(void*)#1}::_FUN(void*) () from /lib64/libnode.so.64
No symbol table info available.
#4  0x0000fffff610379c in start_thread () from /lib64/libpthread.so.0
No symbol table info available.
#5  0x0000fffff605699c in thread_start () from /lib64/libc.so.6
No symbol table info available.

Thread 1 (Thread 0xfffff5847cb0 (LWP 87)):
#0  0x0000fffff5fb9bd0 in raise () from /lib64/libc.so.6
No symbol table info available.
#1  0x0000fffff5fa79a8 in abort () from /lib64/libc.so.6
No symbol table info available.
#2  0x0000ffffee2b1ff4 in ?? () from /usr/lib64/pulseaudio/libpulsecommon-12.2.so
No symbol table info available.
#3  0x0000ffffee2b4528 in ?? () from /usr/lib64/pulseaudio/libpulsecommon-12.2.so
No symbol table info available.
#4  0x0000ffffee2b48c0 in ?? () from /usr/lib64/pulseaudio/libpulsecommon-12.2.so
No symbol table info available.
#5  0x0000ffffee2b5124 in ?? () from /usr/lib64/pulseaudio/libpulsecommon-12.2.so
No symbol table info available.
#6  0x0000fffff5f13fe0 in uv.io_poll () from /lib64/libuv.so.1
No symbol table info available.
#7  0x0000fffff5f04b6c in uv_run () from /lib64/libuv.so.1
No symbol table info available.
#8  0x0000fffff6846ae0 in node::Start(v8::Isolate*, node::IsolateData*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&) () from /lib64/libnode.so.64
No symbol table info available.
#9  0x0000fffff6845174 in node::Start(int, char**) () from /lib64/libnode.so.64
No symbol table info available.
#10 0x0000aaaaaaaaac70 in main (argc=2, argv=0xfffffffff5a8) at ../src/node_main.cc:124
        envp = <optimized out>
        auxv = <optimized out>
(gdb) set logging off
Done logging to /var/lib/almond-server/pulsecore_backtrace.log.
(gdb) quit
A debugging session is active.

        Inferior 1 [process 87] will be killed.

Quit anyway? (y or n) y
Traceback (most recent call last):
  File "/usr/local/bin/precise-engine", line 11, in <module>
    load_entry_point('mycroft-precise==0.3.0', 'console_scripts', 'precise-engine')()
  File "/usr/local/lib/python3.7/site-packages/precise/scripts/engine.py", line 58, in main
    stdout.buffer.flush()
BrokenPipeError: [Errno 32] Broken pipe

Please let me know which additional debuginfo you would like me to install from the above list.

gcampax commented 4 years ago

Thanks for the backtrace. If you can it would be nice to retake the backtrace with debug symbols. Ideally, you can install all the debuginfo packages that gdb suggests. If not, at least libcanberra and pulseaudio-libs would be nice. If you use dnf debuginfo-install inside the container that will also bring in the deps.

grewhit25 commented 4 years ago

I couldn't get almond to start cleanly with all the debug symbols installed, so reverted to just libcanberra and pulseaudio-libs. Will report back on failure.

grewhit25 commented 4 years ago

Here you go:

pulseaudio-libs and libcanberra backtrace ```logs Assertion 're->data || re->memblock' failed at pulsecore/pstream.c:862, function do_read(). Aborting. Thread 1 "node" received signal SIGABRT, Aborted. 0x0000fffff5fb9bd0 in raise () from /lib64/libc.so.6 (gdb) (gdb) set logging file /var/lib/almond-server/pulsecore_backtrace.log (gdb) set logging on Copying output to /var/lib/almond-server/pulsecore_backtrace.log. (gdb) thread apply all bt full Thread 12 (Thread 0xffffc1bcd1b0 (LWP 100)): #0 0x0000fffff61097f0 in pthread_cond_wait@@GLIBC_2.17 () from /lib64/libpthread.so.0 No symbol table info available. #1 0x0000fffff5f110b4 in uv_cond_wait () from /lib64/libuv.so.1 No symbol table info available. #2 0x0000fffff5f00640 in worker () from /lib64/libuv.so.1 No symbol table info available. #3 0x0000fffff610379c in start_thread () from /lib64/libpthread.so.0 No symbol table info available. #4 0x0000fffff605699c in thread_start () from /lib64/libc.so.6 No symbol table info available. Thread 11 (Thread 0xffffc23ce1b0 (LWP 99)): #0 0x0000fffff61097f0 in pthread_cond_wait@@GLIBC_2.17 () from /lib64/libpthread.so.0 No symbol table info available. #1 0x0000fffff5f110b4 in uv_cond_wait () from /lib64/libuv.so.1 No symbol table info available. #2 0x0000fffff5f00640 in worker () from /lib64/libuv.so.1 No symbol table info available. #3 0x0000fffff610379c in start_thread () from /lib64/libpthread.so.0 No symbol table info available. #4 0x0000fffff605699c in thread_start () from /lib64/libc.so.6 No symbol table info available. Thread 10 (Thread 0xffffdcfef1b0 (LWP 98)): #0 0x0000fffff61097f0 in pthread_cond_wait@@GLIBC_2.17 () from /lib64/libpthread.so.0 No symbol table info available. #1 0x0000fffff5f110b4 in uv_cond_wait () from /lib64/libuv.so.1 No symbol table info available. #2 0x0000fffff5f00640 in worker () from /lib64/libuv.so.1 No symbol table info available. --Type for more, q to quit, c to continue without paging--c #3 0x0000fffff610379c in start_thread () from /lib64/libpthread.so.0 No symbol table info available. #4 0x0000fffff605699c in thread_start () from /lib64/libc.so.6 No symbol table info available. Thread 9 (Thread 0xffffdd7f01b0 (LWP 97)): #0 0x0000fffff61097f0 in pthread_cond_wait@@GLIBC_2.17 () from /lib64/libpthread.so.0 No symbol table info available. #1 0x0000fffff5f110b4 in uv_cond_wait () from /lib64/libuv.so.1 No symbol table info available. #2 0x0000fffff5f00640 in worker () from /lib64/libuv.so.1 No symbol table info available. #3 0x0000fffff610379c in start_thread () from /lib64/libpthread.so.0 No symbol table info available. #4 0x0000fffff605699c in thread_start () from /lib64/libc.so.6 No symbol table info available. Thread 8 (Thread 0xffffddff11b0 (LWP 96)): #0 0x0000fffff604d7c4 in poll () from /lib64/libc.so.6 No symbol table info available. #1 0x0000ffffeee51180 in poll (__timeout=-1, __nfds=3, __fds=0xffffbc007390) at /usr/include/bits/poll2.h:46 No locals. #2 poll_func (ufds=0xffffbc007390, nfds=3, timeout=-1, userdata=0xaaaaaac06de0) at pulse/thread-mainloop.c:69 mutex = 0xaaaaaac06de0 r = __func__ = "poll_func" __PRETTY_FUNCTION__ = "poll_func" #3 0x0000ffffeee43470 in pa_mainloop_poll (m=m@entry=0xaaaaaac46370) at pulse/mainloop.c:824 __func__ = "pa_mainloop_poll" __PRETTY_FUNCTION__ = "pa_mainloop_poll" #4 0x0000ffffeee43b3c in pa_mainloop_iterate (m=0xaaaaaac46370, block=, retval=0x0) at pulse/mainloop.c:926 r = 0 __func__ = "pa_mainloop_iterate" __PRETTY_FUNCTION__ = "pa_mainloop_iterate" #5 0x0000ffffeee43c08 in pa_mainloop_run (m=0xaaaaaac46370, retval=retval@entry=0x0) at pulse/mainloop.c:945 r = #6 0x0000ffffeee510d0 in thread (userdata=0xaaaaaada4dc0) at pulse/thread-mainloop.c:100 m = 0xaaaaaada4dc0 mask = {__val = {18446744067267100671, 18446744073709551615 }} prev_mask = {__val = {0, 281474678382592, 281474406224304, 281474810167296, 281474976697456, 281474406224304, 281474406221968, 3885889895750133504, 281474406222000, 281474689758344, 0, 281474678144448, 281474678387520, 3885889895750133504, 281474406222048, 281474678144484}} sa = {__sigaction_handler = {sa_handler = 0x0, sa_sigaction = 0x0}, sa_mask = {__val = {0, 0, 0, 281474406221792, 281474808930836, 281473835860000, 88, 281474406226096, 88, 281474406226096, 281474800843696, 281474406221856, 281474808934348, 281473835860000, 48, 281474406226184}}, sa_flags = 0, sa_restorer = 0x0} #7 0x0000ffffee344804 in internal_thread_func (userdata=0xaaaaaac465e0) at pulsecore/thread-posix.c:81 t = 0xaaaaaac465e0 __func__ = "internal_thread_func" __PRETTY_FUNCTION__ = "internal_thread_func" #8 0x0000fffff610379c in start_thread () from /lib64/libpthread.so.0 No symbol table info available. #9 0x0000fffff605699c in thread_start () from /lib64/libc.so.6 No symbol table info available. Thread 7 (Thread 0xfffff40301b0 (LWP 94)): #0 0x0000fffff610c0d0 in do_futex_wait.constprop () from /lib64/libpthread.so.0 No symbol table info available. #1 0x0000fffff610c200 in __new_sem_wait_slow.constprop.0 () from /lib64/libpthread.so.0 No symbol table info available. #2 0x0000fffff5f11144 in uv_sem_wait () from /lib64/libuv.so.1 No symbol table info available. #3 0x0000fffff69266f8 in ?? () from /lib64/libnode.so.64 No symbol table info available. #4 0x0000fffff610379c in start_thread () from /lib64/libpthread.so.0 No symbol table info available. #5 0x0000fffff605699c in thread_start () from /lib64/libc.so.6 No symbol table info available. Thread 6 (Thread 0xffffef7fe1b0 (LWP 93)): #0 0x0000fffff61097f0 in pthread_cond_wait@@GLIBC_2.17 () from /lib64/libpthread.so.0 No symbol table info available. #1 0x0000fffff5f110b4 in uv_cond_wait () from /lib64/libuv.so.1 No symbol table info available. #2 0x0000fffff68c915c in ?? () from /lib64/libnode.so.64 No symbol table info available. #3 0x0000fffff610379c in start_thread () from /lib64/libpthread.so.0 No symbol table info available. #4 0x0000fffff605699c in thread_start () from /lib64/libc.so.6 No symbol table info available. Thread 5 (Thread 0xffffeffff1b0 (LWP 92)): #0 0x0000fffff61097f0 in pthread_cond_wait@@GLIBC_2.17 () from /lib64/libpthread.so.0 No symbol table info available. #1 0x0000fffff5f110b4 in uv_cond_wait () from /lib64/libuv.so.1 No symbol table info available. #2 0x0000fffff68c915c in ?? () from /lib64/libnode.so.64 No symbol table info available. #3 0x0000fffff610379c in start_thread () from /lib64/libpthread.so.0 No symbol table info available. #4 0x0000fffff605699c in thread_start () from /lib64/libc.so.6 No symbol table info available. Thread 4 (Thread 0xfffff48311b0 (LWP 91)): #0 0x0000fffff61097f0 in pthread_cond_wait@@GLIBC_2.17 () from /lib64/libpthread.so.0 No symbol table info available. #1 0x0000fffff5f110b4 in uv_cond_wait () from /lib64/libuv.so.1 No symbol table info available. #2 0x0000fffff68c915c in ?? () from /lib64/libnode.so.64 No symbol table info available. #3 0x0000fffff610379c in start_thread () from /lib64/libpthread.so.0 No symbol table info available. #4 0x0000fffff605699c in thread_start () from /lib64/libc.so.6 No symbol table info available. Thread 3 (Thread 0xfffff50321b0 (LWP 90)): #0 0x0000fffff61097f0 in pthread_cond_wait@@GLIBC_2.17 () from /lib64/libpthread.so.0 No symbol table info available. #1 0x0000fffff5f110b4 in uv_cond_wait () from /lib64/libuv.so.1 No symbol table info available. #2 0x0000fffff68c915c in ?? () from /lib64/libnode.so.64 No symbol table info available. #3 0x0000fffff610379c in start_thread () from /lib64/libpthread.so.0 No symbol table info available. #4 0x0000fffff605699c in thread_start () from /lib64/libc.so.6 No symbol table info available. Thread 2 (Thread 0xfffff58331b0 (LWP 89)): #0 0x0000fffff6056ac0 in epoll_pwait () from /lib64/libc.so.6 No symbol table info available. #1 0x0000fffff5f1405c in uv.io_poll () from /lib64/libuv.so.1 No symbol table info available. #2 0x0000fffff5f04b6c in uv_run () from /lib64/libuv.so.1 No symbol table info available. #3 0x0000fffff68cc6f4 in node::BackgroundTaskRunner::DelayedTaskScheduler::Start()::{lambda(void*)#1}::_FUN(void*) () from /lib64/libnode.so.64 No symbol table info available. #4 0x0000fffff610379c in start_thread () from /lib64/libpthread.so.0 No symbol table info available. #5 0x0000fffff605699c in thread_start () from /lib64/libc.so.6 No symbol table info available. Thread 1 (Thread 0xfffff5847cb0 (LWP 86)): #0 0x0000fffff5fb9bd0 in raise () from /lib64/libc.so.6 No symbol table info available. #1 0x0000fffff5fa79a8 in abort () from /lib64/libc.so.6 No symbol table info available. #2 0x0000ffffee331ff4 in do_read (p=p@entry=0xaaaaaac2f540, re=re@entry=0xaaaaaac2f708) at pulsecore/pstream.c:929 flags = length = channel = d = l = r = release_memblock = __func__ = "do_read" __PRETTY_FUNCTION__ = "do_read" #3 0x0000ffffee334528 in do_pstream_read_write (p=0xaaaaaac2f540) at pulsecore/pstream.c:248 __func__ = "do_pstream_read_write" __PRETTY_FUNCTION__ = "do_pstream_read_write" #4 0x0000ffffee3348c0 in srb_callback (srb=, userdata=0xaaaaaac2f540) at pulsecore/pstream.c:287 b = p = 0xaaaaaac2f540 __func__ = "srb_callback" __PRETTY_FUNCTION__ = "srb_callback" #5 0x0000ffffee335124 in srbchannel_rwloop (sr=0xaaaaaada50c0) at pulsecore/srbchannel.c:190 No locals. #6 0x0000fffff5f13fe0 in uv.io_poll () from /lib64/libuv.so.1 No symbol table info available. #7 0x0000fffff5f04b6c in uv_run () from /lib64/libuv.so.1 No symbol table info available. #8 0x0000fffff6846ae0 in node::Start(v8::Isolate*, node::IsolateData*, std::vector, std::allocator >, std::allocator, std::allocator > > > const&, std::vector, std::allocator >, std::allocator, std::allocator > > > const&) () from /lib64/libnode.so.64 No symbol table info available. #9 0x0000fffff6845174 in node::Start(int, char**) () from /lib64/libnode.so.64 No symbol table info available. #10 0x0000aaaaaaaaac70 in main () No symbol table info available. (gdb) set logging off Done logging to /var/lib/almond-server/pulsecore_backtrace.log. (gdb) quit A debugging session is active. Inferior 1 [process 86] will be killed. Quit anyway? (y or n) y Traceback (most recent call last): File "/usr/local/bin/precise-engine", line 11, in load_entry_point('mycroft-precise==0.3.0', 'console_scripts', 'precise-engine')() File "/usr/local/lib/python3.7/site-packages/precise/scripts/engine.py", line 58, in main stdout.buffer.flush() BrokenPipeError: [Errno 32] Broken pipe ```
gcampax commented 4 years ago

Thanks! The crash reason is unfortunately still not obvious from the backtrace, but now I have enough to investigate. I'll let you know if I find a fix.

grewhit25 commented 4 years ago

Thanks for your time on this issue. I have enabled core dump in the meantime just in case are are able to glean any further info.

grewhit25 commented 4 years ago

I have not seen this issue since upgrading to beta 1.8.0 and now running the released version. So I think we can close this one.