Docker/Alpine: Crash in ZThread::ThreadOps::setPriority
The fix for #104 (closed) apparently did not work. While I could not reproduce a crash on my own in docker with our Alpine based server image, it was easy to do on an Alpine based virtual machine. The callstack:
[Switching to LWP 2395]
0x00007ffff7fb68b0 in a_cas (s=-2147483647, t=0, p=0xb0) at ./arch/x86_64/atomic_arch.h:4
warning: 4 ./arch/x86_64/atomic_arch.h: No such file or directory
(gdb) bt
#0 0x00007ffff7fb68b0 in a_cas (s=-2147483647, t=0, p=0xb0) at ./arch/x86_64/atomic_arch.h:4
#1 __lock (l=l@entry=0xb0) at src/thread/__lock.c:24
#2 0x00007ffff7fb9bfa in pthread_setschedparam (t=0x0, policy=0, param=0x7ffff7869900)
at src/thread/pthread_setschedparam.c:9
#3 0x00007ffff7e31205 in ZThread::ThreadOps::setPriority(ZThread::ThreadOps*, ZThread::Priority) ()
from /usr/lib/libZThread-2.3.so.2
#4 0x00007ffff7e29b8c in ZThread::ThreadImpl::dispatch(ZThread::ThreadImpl*, ZThread::ThreadImpl*, ZThread::Task) ()
from /usr/lib/libZThread-2.3.so.2
#5 0x00007ffff7e28c84 in ZThread::(anonymous namespace)::Launcher::run() () from /usr/lib/libZThread-2.3.so.2
#6 0x00007ffff7e31329 in _dispatch () from /usr/lib/libZThread-2.3.so.2
#7 0x00007ffff7fb822e in start (p=0x7ffff7869ad8) at src/thread/pthread_create.c:207
#8 0x00007ffff7fba82f in __clone () at src/thread/x86_64/clone.s:22
Backtrace stopped: frame did not save the PC
I can only guess at this point. ZThread is really stale and probably simply does not work right on Alpine. This will not be a problem on trunk, but on 0.2.9, we should switch to Ubuntu based images, even though they are considerably larger.