Here's the situation: I have a number of python plugins running on my prod system, all using the 'old' domotcz (so not domoticzEx) framework. My system runs pretty stable for quite some time (weeks) but will eventually crash. Today, after 25 days of running, it crashed again. Monit will restart so no issues there but I am interested to understand how I can fix. During that time, domoticz gradually eats memory at a rate of just under 1MB per day. In essence not a real worry since teh system has plentyof mem but still, it shouldn't. I suspect this is plugin related but I have not confirmed.
Then, as mentioned, today the crash:
Code: Select all
May 10 10:02:02 domoticz domoticz: Domoticz(pid:904, tid:27431('B2')) received fatal signal 6 (Aborted)
May 10 10:02:02 domoticz domoticz: siginfo address=0x388, address=(nil)
May 10 10:02:05 domoticz domoticz: P1: P1 Smart Meter (Power)
May 10 10:02:05 domoticz domoticz: Thread 43 (Thread 0xac2ff200 (LWP 27431)):
May 10 10:02:05 domoticz domoticz: #0 __waitpid (options=0, stat_loc=0xac2fc8a0, pid=32110) at ../sysdeps/unix/sysv/linux/waitpid.c:30
May 10 10:02:05 domoticz domoticz: #1 __waitpid (pid=32110, stat_loc=0xac2fc8a0, options=0) at ../sysdeps/unix/sysv/linux/waitpid.c:25
May 10 10:02:05 domoticz domoticz: #2 0x0027558c in dumpstack_gdb(bool) ()
May 10 10:02:05 domoticz domoticz: #3 0x00275b58 in signal_handler(int, siginfo_t*, void*) ()
May 10 10:02:05 domoticz domoticz: #4 <signal handler called>
May 10 10:02:05 domoticz domoticz: #5 raise (sig=6) at ../sysdeps/unix/sysv/linux/raise.c:50
May 10 10:02:05 domoticz domoticz: #6 <signal handler called>
May 10 10:02:05 domoticz domoticz: #7 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
May 10 10:02:05 domoticz domoticz: #8 0xb68c3230 in __GI_abort () at abort.c:79
May 10 10:02:05 domoticz domoticz: #9 0xb691350c in __libc_message (action=action@entry=do_abort, fmt=<optimized out>) at ../sysdeps/posix/libc_fatal.c:181
May 10 10:02:05 domoticz domoticz: #10 0xb691a034 in malloc_printerr (str=<optimized out>) at malloc.c:5341
May 10 10:02:05 domoticz domoticz: #11 0xb691bd40 in _int_free (av=0xb69f67d4 <main_arena>, p=0x2f99ff8, have_lock=<optimized out>) at malloc.c:4165
May 10 10:02:05 domoticz domoticz: #12 0xb5b1e720 in _PyEval_EvalFrameDefault () from /lib/arm-linux-gnueabihf/libpython3.7m.so
May 10 10:02:05 domoticz domoticz: #13 0xb5d15ea8 in ?? () from /lib/arm-linux-gnueabihf/libpython3.7m.soAnything you can make of this? The plugin is my own Nuki lock plugin to be found here: https://github.com/heggink/domoticz-nuki
Maybe the plugin itself has a memory leak that I missed.
Happy to hear your thoughts for which many thanks!
Herman