Hi! I have a backtrace for segfault in haproxy=1.8.4 with 4 threads. It happens usually under heavy load. Can you take a look?
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". Core was generated by `/usr/sbin/haproxy -f /etc/haproxy/haproxy-market.cfg -p /var/run/haproxy-market'. Program terminated with signal SIGSEGV, Segmentation fault. #0 __pendconn_free (p=0x55d61e970cd8) at src/queue.c:292 292 HA_ATOMIC_SUB(&p->srv->nbpend, 1); (gdb) bt #0 __pendconn_free (p=0x55d61e970cd8) at src/queue.c:292 #1 0x000055d61be491de in pendconn_get_next_strm (px=0x55d61e96fea0, srv=0x55d61ea3d950) at src/queue.c:122 #2 process_srv_queue (s=0x55d61ea3d950) at src/queue.c:153 #3 0x000055d61bdcfcf6 in stream_free (s=0x7f1a6899a440) at src/stream.c:315 #4 process_stream (t=<optimized out>) at src/stream.c:2513 #5 0x000055d61be48aa8 in process_runnable_tasks () at src/task.c:311 #6 0x000055d61bdfdc84 in run_poll_loop () at src/haproxy.c:2398 #7 run_thread_poll_loop (data=<optimized out>) at src/haproxy.c:2460 #8 0x00007f1a7f91d184 in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0 #9 0x00007f1a7eb9b03d in clone () from /lib/x86_64-linux-gnu/libc.so.6 (gdb) quit root@a.local# haproxy -vv HA-Proxy version 1.8.4-1 2018/02/08 Copyright 2000-2018 Willy Tarreau <wi...@haproxy.org> Build options : TARGET = linux2628 CPU = generic CC = gcc CFLAGS = -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 OPTIONS = USE_GETADDRINFO=1 USE_ZLIB=1 USE_REGPARM=1 USE_THREAD=1 USE_OPENSSL=1 USE_LUA=1 USE_PCRE=1 USE_PCRE_JIT=1 USE_TFO=1 USE_NS=1 Default settings : maxconn = 2000, bufsize = 16384, maxrewrite = 1024, maxpollevents = 200 Built with OpenSSL version : OpenSSL 1.0.1f 6 Jan 2014 Running on OpenSSL version : OpenSSL 1.0.1f 6 Jan 2014 OpenSSL library supports TLS extensions : yes OpenSSL library supports SNI : yes OpenSSL library supports : SSLv3 TLSv1.0 TLSv1.1 TLSv1.2 Built with Lua version : Lua 5.3.1 Built with transparent proxy support using: IP_TRANSPARENT IPV6_TRANSPARENT IP_FREEBIND Encrypted password support via crypt(3): yes Built with multi-threading support. Built with PCRE version : 8.31 2012-07-06 Running on PCRE version : 8.31 2012-07-06 PCRE library supports JIT : no (libpcre build without JIT?) Built with zlib version : 1.2.8 Running on zlib version : 1.2.8 Compression algorithms supported : identity("identity"), deflate("deflate"), raw-deflate("deflate"), gzip("gzip") Built with network namespace support. Available polling systems : epoll : pref=300, test result OK poll : pref=200, test result OK select : pref=150, test result OK Total: 3 (3 usable), will use epoll. Available filters : [SPOE] spoe [COMP] compression [TRACE] trace -- Best regards Maksim Kupriianov