Had a couple servers running 3.2.x core dump in the last 2 days (both
built from source).  I think they were running for over a week.

Here is a backtrace of one:
(gdb) bt
#0  0x00007f06c15015ef in raise () from /lib64/libc.so.6
#1  0x00007f06c14d4e65 in abort () from /lib64/libc.so.6
#2  0x00000000005aa45c in ha_panic () at src/debug.c:826
#3  ha_panic () at src/debug.c:757
#4  0x00000000006a9fd5 in wdt_handler (sig=<optimized out>,
si=<optimized out>, arg=<optimized out>) at src/wdt.c:190
#5  <signal handler called>
#6  0x0000000000698e25 in fwlc_get_next_server (p=<optimized out>,
srvtoavoid=srvtoavoid@entry=0x2ad148f0) at src/lb_fwlc.c:772
#7  0x000000000056e851 in assign_server (s=s@entry=0x7f06bc06add0) at
src/backend.c:706
#8  0x000000000056ecbb in assign_server_and_queue
(s=s@entry=0x7f06bc06add0) at src/backend.c:985
#9  0x00000000005728e8 in assign_server_and_queue (s=0x7f06bc06add0)
at include/haproxy/queue.h:89
#10 srv_redispatch_connect (s=s@entry=0x7f06bc06add0) at src/backend.c:2256
#11 0x0000000000572c47 in back_handle_st_req (s=0x7f06bc06add0) at
src/backend.c:2581
#12 0x00000000004f277f in process_stream (t=<optimized out>,
context=context@entry=0x7f06bc06add0, state=<optimized out>) at
src/stream.c:2376
#13 0x000000000065703e in run_tasks_from_lists
(budgets=budgets@entry=0x7f06c14a7880) at src/task.c:655
#14 0x0000000000657b24 in process_runnable_tasks () at src/task.c:889
#15 0x00000000005be988 in run_poll_loop () at src/haproxy.c:2864
#16 0x00000000005beff7 in run_thread_poll_loop (data=<optimized out>)
at src/haproxy.c:3080
#17 0x00007f06c18921da in start_thread () from /lib64/libpthread.so.0
#18 0x00007f06c14ec8d3 in clone () from /lib64/libc.so.6

HAProxy version 3.2.1-f4d1a4e 2025/06/11 - https://haproxy.org/
Status: long-term supported branch - will stop receiving fixes around Q2 2030.
Known bugs: http://www.haproxy.org/bugs/bugs-3.2.1.html
Running on: Linux 5.4.17-2136.344.4.1.el8uek.x86_64 #3 SMP Mon Jun 9
16:15:55 PDT 2025 x86_64
Build options :
  TARGET  = linux-glibc
  CC      = cc
  CFLAGS  = -O2 -g -fwrapv
  OPTIONS = USE_LINUX_TPROXY=1 USE_OPENSSL=1 USE_ZLIB=1 USE_PCRE=1
  DEBUG   =

Feature list : -51DEGREES +ACCEPT4 +BACKTRACE -CLOSEFROM +CPU_AFFINITY
+CRYPT_H -DEVICEATLAS +DL -ENGINE +EPOLL -EVPORTS +GETADDRINFO -KQUEUE
-LIBATOMIC +LIBCRYPT +LINUX_CAP +LINUX_SPLICE +LINUX_TPROXY -LUA -MATH
-MEMORY_PROFILING +NETFILTER +NS -OBSOLETE_LINKER +OPENSSL
-OPENSSL_AWSLC -OPENSSL_WOLFSSL -OT +PCRE -PCRE2 -PCRE2_JIT -PCRE_JIT
+POLL +PRCTL -PROCCTL -PROMEX -PTHREAD_EMULATION -QUIC
-QUIC_OPENSSL_COMPAT +RT -SLZ +SSL -STATIC_PCRE -STATIC_PCRE2 +TFO
+THREAD +THREAD_DUMP +TPROXY -WURFL +ZLIB

Default settings :
  bufsize = 16384, maxrewrite = 1024, maxpollevents = 200

Built with multi-threading support (MAX_TGROUPS=32, MAX_THREADS=1024,
default=3).
Built with SSL library version : OpenSSL 1.1.1k  FIPS 25 Mar 2021
Running on SSL library version : OpenSSL 1.1.1k  FIPS 25 Mar 2021
SSL library supports TLS extensions : yes
SSL library supports SNI : yes
SSL library FIPS mode : no
SSL library supports : TLSv1.0 TLSv1.1 TLSv1.2 TLSv1.3
Built with network namespace support.
Built with zlib version : 1.2.11
Running on zlib version : 1.2.11
Compression algorithms supported : identity("identity"),
deflate("deflate"), raw-deflate("deflate"), gzip("gzip")
Built with transparent proxy support using: IP_TRANSPARENT
IPV6_TRANSPARENT IP_FREEBIND
Built with PCRE version : 8.42 2018-03-20
Running on PCRE version : 8.42 2018-03-20
PCRE library supports JIT : no (USE_PCRE_JIT not set)
Encrypted password support via crypt(3): yes
Built with gcc compiler version 8.5.0 20210514 (Red Hat 8.5.0-26.0.1)

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 multiplexer protocols :
(protocols marked as <default> cannot be specified using 'proto' keyword)
         h2 : mode=HTTP  side=FE|BE  mux=H2    flags=HTX|HOL_RISK|NO_UPG
  <default> : mode=HTTP  side=FE|BE  mux=H1    flags=HTX
         h1 : mode=HTTP  side=FE|BE  mux=H1    flags=HTX|NO_UPG
       fcgi : mode=HTTP  side=BE     mux=FCGI  flags=HTX|HOL_RISK|NO_UPG
  <default> : mode=SPOP  side=BE     mux=SPOP  flags=HOL_RISK|NO_UPG
       spop : mode=SPOP  side=BE     mux=SPOP  flags=HOL_RISK|NO_UPG
  <default> : mode=TCP   side=FE|BE  mux=PASS  flags=
       none : mode=TCP   side=FE|BE  mux=PASS  flags=NO_UPG

Available services : none

Available filters :
        [BWLIM] bwlim-in
        [BWLIM] bwlim-out
        [CACHE] cache
        [COMP] compression
        [FCGI] fcgi-app
        [SPOE] spoe
        [TRACE] trace



This is from the one that was running 3.2.0:
#0  0x00007f893f12b5ef in raise () from /lib64/libc.so.6
#1  0x00007f893f0fee65 in abort () from /lib64/libc.so.6
#2  0x00000000005aa3ec in ha_panic () at src/debug.c:826
#3  ha_panic () at src/debug.c:757
#4  0x00000000006a9c85 in wdt_handler (sig=<optimized out>,
si=<optimized out>, arg=<optimized out>) at src/wdt.c:190
#5  <signal handler called>
#6  0x0000000000698b0e in fwlc_get_next_server (p=<optimized out>,
srvtoavoid=srvtoavoid@entry=0x1e146c40) at src/lb_fwlc.c:774
#7  0x000000000056e7e1 in assign_server (s=s@entry=0x1e41a350) at
src/backend.c:706
#8  0x000000000056ec4b in assign_server_and_queue
(s=s@entry=0x1e41a350) at src/backend.c:985
#9  0x0000000000572878 in assign_server_and_queue (s=0x1e41a350) at
include/haproxy/queue.h:89
#10 srv_redispatch_connect (s=s@entry=0x1e41a350) at src/backend.c:2256
#11 0x0000000000572bd7 in back_handle_st_req (s=0x1e41a350) at
src/backend.c:2581
#12 0x00000000004f278f in process_stream (t=<optimized out>,
context=context@entry=0x1e41a350, state=<optimized out>) at
src/stream.c:2376
#13 0x0000000000656cde in run_tasks_from_lists
(budgets=budgets@entry=0x7ffd52d8ae70) at src/task.c:655
#14 0x00000000006577c4 in process_runnable_tasks () at src/task.c:889
#15 0x00000000005be628 in run_poll_loop () at src/haproxy.c:2864
#16 0x00000000005bec97 in run_thread_poll_loop (data=<optimized out>)
at src/haproxy.c:3080
#17 0x000000000042e9c5 in main (argc=<optimized out>, argv=<optimized
out>) at src/haproxy.c:3670

Top part of build info:
HAProxy version 3.2.0-e134140 2025/05/28 - https://haproxy.org/
Status: long-term supported branch - will stop receiving fixes around Q2 2030.
Known bugs: http://www.haproxy.org/bugs/bugs-3.2.0.html
Running on: Linux 5.4.17-2136.344.4.1.el8uek.x86_64 #3 SMP Mon Jun 9
16:15:55 PDT 2025 x86_64
Build options :
  TARGET  = linux-glibc
  CC      = cc
  CFLAGS  = -O2 -g -fwrapv
  OPTIONS = USE_LINUX_TPROXY=1 USE_OPENSSL=1 USE_ZLIB=1 USE_PCRE=1
  DEBUG   =

Feature list : -51DEGREES +ACCEPT4 +BACKTRACE -CLOSEFROM +CPU_AFFINITY
+CRYPT_H -DEVICEATLAS +DL -ENGINE +EPOLL -EVPORTS +GETADDRINFO -KQUEUE
-LIBATOMIC +LIBCRYPT +LINUX_CAP +LINUX_SPLICE +LINUX_TPROXY -LUA -MATH
-MEMORY_PROFILING +NETFILTER +NS -OBSOLETE_LINKER +OPENSSL
-OPENSSL_AWSLC -OPENSSL_WOLFSSL -OT +PCRE -PCRE2 -PCRE2_JIT -PCRE_JIT
+POLL +PRCTL -PROCCTL -PROMEX -PTHREAD_EMULATION -QUIC
-QUIC_OPENSSL_COMPAT +RT -SLZ +SSL -STATIC_PCRE -STATIC_PCRE2 +TFO
+THREAD +THREAD_DUMP +TPROXY -WURFL +ZLIB


Not sure how to reproduce, but it's been a long time since I last had
a crash. and I think these might be the only servers I am running 3.x,
most running 2.8.


Reply via email to