Hi,

Our HAProxy (2.0.14) started to crash, so first we upgraded to 2.0.17 but
it didn't help. Below you'll find traces from coredump

Version:
HA-Proxy version 2.0.17 2020/07/31 - https://haproxy.org/
Build options :
  TARGET  = linux-glibc
  CPU     = generic
  CC      = gcc
  CFLAGS  = -O0 -g -fno-strict-aliasing -Wdeclaration-after-statement
-fwrapv -Wno-unused-label -Wno-sign-compare -Wno-unused-parameter
-Wno-old-style-declaration -Wno-ignored-qualifiers -Wno-clobbered
-Wno-missing-field-initializers -Wno-implicit-fallthrough
-Wno-stringop-overflow -Wtype-limits -Wshift-negative-value
-Wshift-overflow=2 -Wduplicated-cond -Wnull-dereference
-DIP_BIND_ADDRESS_NO_PORT=24 -DMAX_SESS_STKCTR=12
  OPTIONS = USE_PCRE=1 USE_PCRE_JIT=1 USE_REGPARM=1 USE_GETADDRINFO=1
USE_OPENSSL=1 USE_LUA=1 USE_ZLIB=1 USE_DL=1

Feature list : +EPOLL -KQUEUE -MY_EPOLL -MY_SPLICE +NETFILTER +PCRE
+PCRE_JIT -PCRE2 -PCRE2_JIT +POLL -PRIVATE_CACHE +THREAD -PTHREAD_PSHARED
+REGPARM -STATIC_PCRE -STATIC_PCRE2 +TPROXY +LINUX_TPROXY +LINUX_SPLICE
+LIBCRYPT +CRYPT_H -VSYSCALL +GETADDRINFO +OPENSSL +LUA +FUTEX +ACCEPT4
-MY_ACCEPT4 +ZLIB -SLZ +CPU_AFFINITY +TFO +NS +DL +RT -DEVICEATLAS
-51DEGREES -WURFL -SYSTEMD -OBSOLETE_LINKER +PRCTL +THREAD_DUMP -EVPORTS

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

Built with multi-threading support (MAX_THREADS=64, default=4).
Built with OpenSSL version : OpenSSL 1.1.1f  31 Mar 2020
Running on OpenSSL version : OpenSSL 1.1.1f  31 Mar 2020
OpenSSL library supports TLS extensions : yes
OpenSSL library supports SNI : yes
OpenSSL library supports : TLSv1.0 TLSv1.1 TLSv1.2 TLSv1.3
Built with Lua version : Lua 5.3.5
Built with network namespace support.
Built with transparent proxy support using: IP_TRANSPARENT IPV6_TRANSPARENT
IP_FREEBIND
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 PCRE version : 8.44 2020-02-12
Running on PCRE version : 8.44 2020-02-12
PCRE library supports JIT : yes
Encrypted password support via crypt(3): yes

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        mux=H2
              h2 : mode=HTX        side=FE|BE     mux=H2
       <default> : mode=HTX        side=FE|BE     mux=H1
       <default> : mode=TCP|HTTP   side=FE|BE     mux=PASS

Available services : none

Available filters :
[SPOE] spoe
[COMP] compression
[CACHE] cache
[TRACE] trace


Coredump fragment from thread1:
(gdb) bt
#0  0x000055cbbf6ed64b in h2s_notify_recv (h2s=0x7f65b8b55130) at
src/mux_h2.c:783
#1  0x000055cbbf6edbc7 in h2s_close (h2s=0x7f65b8b55130) at src/mux_h2.c:921
#2  0x000055cbbf6f9745 in h2s_htx_make_trailers (h2s=0x7f65b8b55130,
htx=0x7f65a9c34f20) at src/mux_h2.c:5385
#3  0x000055cbbf6fa48e in h2_snd_buf (cs=0x7f65b8c48a40,
buf=0x7f65d05291b8, count=2, flags=1) at src/mux_h2.c:5694
#4  0x000055cbbf7cdde3 in si_cs_send (cs=0x7f65b8c48a40) at
src/stream_interface.c:762
#5  0x000055cbbf7ce839 in stream_int_chk_snd_conn (si=0x7f65d0529478) at
src/stream_interface.c:1145
#6  0x000055cbbf7cc9d6 in si_chk_snd (si=0x7f65d0529478) at
include/proto/stream_interface.h:496
#7  0x000055cbbf7cd559 in stream_int_notify (si=0x7f65d05294d0) at
src/stream_interface.c:510
#8  0x000055cbbf7cda33 in si_cs_process (cs=0x55cbca178f90) at
src/stream_interface.c:644
#9  0x000055cbbf7cdfb1 in si_cs_io_cb (t=0x0, ctx=0x7f65d05294d0, state=1)
at src/stream_interface.c:817
#10 0x000055cbbf81af32 in process_runnable_tasks () at src/task.c:415
#11 0x000055cbbf740cc0 in run_poll_loop () at src/haproxy.c:2701
#12 0x000055cbbf741188 in run_thread_poll_loop (data=0x1) at
src/haproxy.c:2840
#13 0x00007f667fbdb6db in start_thread (arg=0x7f65d5556700) at
pthread_create.c:463
#14 0x00007f667e764a3f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

(gdb) bt full
#0  0x000055cbbf6ed64b in h2s_notify_recv (h2s=0x7f65b8b55130) at
src/mux_h2.c:783
        sw = 0xffffffff
#1  0x000055cbbf6edbc7 in h2s_close (h2s=0x7f65b8b55130) at src/mux_h2.c:921
No locals.
#2  0x000055cbbf6f9745 in h2s_htx_make_trailers (h2s=0x7f65b8b55130,
htx=0x7f65a9c34f20) at src/mux_h2.c:5385
        list = {{n = {ptr = 0x55cbbf88d18c "", len = 0}, v = {ptr =
0x7f65a9c34f20 "�?", len = 94333580136844}}, {n = {ptr = 0x7f65d5532410 "
Oée\177", len = 94333579742112}, v = {ptr = 0x7f65a9c38e78 "�\001", len =
140074616573728}}, {n = {
              ptr = 0x55cbbf6ea203 <htx_get_blksz+24>
"\211E�\213E�\203�\002t\005\203�\005u\035H\213E�\213@\004\017��H\213E�\213@\004��\b%��\017",
len = 81604378627}, v = {ptr = 0x1fd00000001 <error: Cannot access memory
at address 0x1fd00000001>, len = 140074616589944}}, {n = {ptr =
0x7f65a9c34f20 "�?", len = 140075347420216}, v = {
              ptr = 0x55cbbf82bfc0 <htx_used_space+32>
"\001�H\203�\b[]�UH\211�SH\203�\bH\211}�H\213E�\213\030H\213E�H\211�����)�\211�H\203�\b[]�UH\211�H\203�\030H\211}�H\213E�H\211�����\211E�\203}�\aw\a�",
len = 140074616573728}}, {n = {ptr = 0x3fd0 <error: Cannot access memory at
address 0x3fd0>, len = 140075347420248}, v = {
              ptr = 0x55cbbf82bfe8 <htx_free_space+31>
")�\211�H\203�\b[]�UH\211�H\203�\030H\211}�H\213E�H\211�����\211E�\203}�\aw\a�",
len = 2848149280}}, {n = {ptr = 0x7f65a9c34f20 "�?", len =
140075347420288}, v = {
              ptr = 0x55cbbf82b970 <htx_get_blk+41>
"\211�H��\003H\001�H\203�\020[]�UH\211�H\211}�H\213E�\213@
\004��\034]�UH\211�H\203�\030H\211}�H\213E�H\211������\211E�\213E�\203�\002t\005\203�\005u\035H\213E�\213@
\004\017��H\213E�\213@\004��\b%��\017", len = 2848149280}}, {n = {ptr =
0x7f65a9c34f20 "�?", len = 140075347420512}, v = {
              ptr = 0x7f65d55324c0 "�$S�e\177", len = 94333579740367}}, {n
= {ptr = 0x1a9c34fd8 <error: Cannot access memory at address 0x1a9c34fd8>,
len = 140074616573728}, v =
[STRIPED]

I can provide more details from coredump if needed.

Reply via email to