HAProxy known bugs for maintenance branch 1.8 :  62 

This is maintenance branch 1.8 whose latest version is 1.8.30. If your version is not the last one in the maintenance branch, you are missing fixes for known bugs, and by not updating you are needlessly taking the responsibility for the risk of unexpected service outages and exposing your web site to possible security issues.

The HAProxy development team takes a great care of maintaining stable versions so that all users can apply bug fixes without having to take the risk of upgrading to a new branch. In turn users are expected to apply the fixes when the development team estimates that they were worth being backported to stable branches. In short, if you are running any 1.8 version other than 1.8.30, you're running with known bugs.

Quick links

Versions available in this branch

This branch contains the following releases :

DateVersionComment
2021-04-121.8.30 ⇐ last
2021-03-191.8.29 
2021-01-131.8.28 
2020-11-061.8.27 
2020-08-031.8.26 
2020-04-021.8.25 
2020-02-151.8.24 
2019-11-251.8.23 
2019-10-251.8.22 
2019-08-161.8.21 
2019-04-251.8.20 
2019-02-111.8.19 
2019-02-061.8.18 
2019-01-081.8.17 
2018-12-211.8.16 
2018-12-131.8.15 
2018-09-201.8.14 
2018-07-301.8.13 
2018-06-271.8.12 
2018-06-261.8.11 
2018-06-221.8.10 
2018-05-181.8.9 
2018-04-191.8.8 
2018-04-071.8.7 
2018-04-051.8.6 
2018-03-231.8.5 
2018-02-081.8.4 
2017-12-301.8.3 
2017-12-231.8.2 
2017-12-031.8.1 
2017-11-261.8.0 

Fixes for known bugs pending in this branch since the last release (1.8.30)

These fixes have already been queued for the next 1.8 release but no version was released with them yet. Note that fixes are backported several at a time from the development branch to maintenance branches, and the absence of a fix here doesn't mean none will be issued soon.

Bugs are almost always tagged with a severity (some people forget the severity tag when the bug is minor). The following severities are used :

Total known bugs in the latest version of this branch by category :

TotalCRITICALMAJORMEDIUMMINOR
62 0 4 31 27

Click on the subjects below to get the full description of the bug :

Merge dateSubject - Severity (minor, medium, major, critical)
2022-08-30BUG/MEDIUM: peers: Add connect and server timeut to peers proxy
2022-08-30BUG/MEDIUM: spoe: Properly update streams waiting for a ACK in async mode
2022-08-30BUG/MEDIUM: mux-h2: do not fiddle with ->dsi to indicate demux is idle
2022-08-25BUG/MEDIUM: shctx: leave the block allocator when enough blocks are found
2022-08-25BUG/MINOR: hlua: Don't rely on top of the stack when using Lua buffers
2022-08-25BUG/MINOR: mux-h2: do not send GOAWAY if SETTINGS were not sent
2022-08-25BUG/MINOR: backend: Fallback on RR algo if balance on source is impossible
2022-08-25BUG/MINOR: server: do not enable DNS resolution on disabled proxies
2022-08-25BUG/MINOR: server: Make SRV_STATE_LINE_MAXLEN value from 512 to 2kB (2000 bytes).
2022-08-25BUG/MINOR: map/cli: make sure patterns don't vanish under "show map"'s init
2022-08-25BUG/MINOR: map/cli: protect the backref list during "show map" errors
2022-08-25BUG/MEDIUM: cli: make "show cli sockets" really yield
2022-08-25BUG/MINOR: cache: Disable cache if applet creation fails
2022-08-25BUG/MINOR: cache: do not display expired entries in "show cache"
2022-08-25BUG/MINOR: cli: shows correct mode in "show sess"
2022-08-25BUG/MEDIUM: mworker: close unused transferred FDs on load failure
2022-08-25BUG/MAJOR: spoe: properly detach all agents when releasing the applet
2022-08-25BUG/MEDIUM: mworker: don't lose the stats socket on failed reload
2022-08-25BUG/MINOR: cli: fix _getsocks with musl libc
2022-08-25BUG/MEDIUM: http-ana: Drain request data waiting the tarpit timeout expiration
2022-08-25BUG/MINOR: mux-h2: do not prevent from sending a final GOAWAY frame
2022-08-25BUG/MEDIUM: stream: Keep FLT_END analyzers if a stream detects a channel error
2022-08-25BUG/MAJOR: lua: use task_wakeup() to properly run a task once
2022-08-25BUG/MEDIUM: lua: fix wakeup condition from sleep()
2022-08-25BUG/MINOR: server: allow 'enable health' only if check configured
2022-08-25BUG/MINOR threads: Use get_(local|gm)time instead of (local|gm)time
2022-08-25BUG/MEDIUM: sock: really fix detection of early connection failures in for 2.3-
2022-08-25BUG/MINOR: compat: make sure __WORDSIZE is always defined
2022-08-25BUG/MINOR: tools: Fix loop condition in dump_text()
2022-08-25BUG/MINOR: ebtree: remove dependency on incorrect macro for bits per long
2022-08-25BUG/MINOR: server: update last_change on maint->ready transitions too
2022-08-25BUG/MINOR: mworker: do not export HAPROXY_MWORKER_REEXEC across programs
2022-08-25BUG/MEDIUM: mworker: do not register an exit handler if exit is expected
2021-07-29BUG/MEDIUM: tcp-check: Do not dereference inexisting connection
2021-07-08BUG/MINOR: peers: fix data_type bit computation more than 32 data_types
2021-07-08BUG/MINOR: cli: fix server name output in "show fd"
2021-07-08BUG/MEDIUM: sock: make sure to never miss early connection failures
2021-07-08BUG/MINOR: server/cli: Fix locking in function processing "set server" command
2021-07-08BUG/MEDIUM: server/cli: Fix ABBA deadlock when fqdn is set from the CLI
2021-07-08BUG/MAJOR: server: fix deadlock when changing maxconn via agent-check
2021-07-08BUG/MEDIUM: spoe: Register pre/post analyzers in start_analyze callback function
2021-07-08BUG/MEDIUM: dns: send messages on closed/reused fd if fd was detected broken
2021-07-08BUG/MINOR: ssl: use atomic ops to update global shctx stats
2021-07-08BUG/MEDIUM: shctx: use at least thread-based locking on USE_PRIVATE_CACHE
2021-07-08BUG/MEDIUM: dns: reset file descriptor if send returns an error
2021-07-08BUG/MINOR: ssl: OCSP stapling does not work if expire too far in the future
2021-07-08BUG/MEDIUM: filters: Exec pre/post analysers only one time per filter
2021-07-08BUG/MAJOR: server: prevent deadlock when using 'set maxconn server'
2021-07-08BUG/MEDIUM: ebtree: Invalid read when looking for dup entry
2021-07-08BUG/MEDIUM: peers: reset tables stage flags stages on new conns
2021-07-08BUG/MEDIUM: peers: re-work updates lookup during the sync on the fly
2021-07-08BUG/MEDIUM: peers: reset commitupdate value in new conns
2021-07-08BUG/MEDIUM: peers: reset starting point if peers appears longly disconnected
2021-07-08BUG/MEDIUM: peers: stop considering ack messages teaching a full resync
2021-07-08BUG/MEDIUM: peers: register last acked value as origin receiving a resync req
2021-07-08BUG/MEDIUM: peers: initialize resync timer to get an initial full resync
2021-07-08BUG/MEDIUM: peers: re-work refcnt on table to protect against flush
2021-07-08BUG/MEDIUM: peers: re-work connection to new process during reload.
2021-07-08BUG/MINOR: mworker/init: don't reset nb_oldpids in non-mworker cases
2021-07-08BUG/MINOR: logs: Report the true number of retries if there was no connection
2021-07-08BUG/MEDIUM: sample: Fix adjusting size in field converter
2021-07-08BUG/MINOR: tools: fix parsing "us" unit for timers

Known bugs fixed in the development branch after the last commit in this branch

It is important to understand that not all of these commits are necessarily relevant to this version, but clicking on them will show the bug description. All fixes are made first in the development branch and then backported to the maintenance branches. This ensures no fix is lost when upgrading. If a fix was marked for backporting to this branch and is not there yet, it's likely that it is still missing. Do not hesitate to ask on the haproxy mailing list if you feel like a fix has been skipped.

DateSubject
2022-12-02BUG/MINOR: ssl: initialize WolfSSL before parsing
2022-12-02BUG/MINOR: ssl: initialize SSL error before parsing
2022-11-29BUG/MINOR: peers: always update the stksess shard number on incoming updates
2022-11-29BUG/MEDIUM: mux-h1: Close client H1C on EOS when there is no output data
2022-11-29BUG/MINOR: peers: always initialize the stksess shard value
2022-11-29BUG/MINOR: quic: Endless loop during retransmissions
2022-11-29CLEANUP: ncbuf: use standard BUG_ON with DEBUG_STRICT
2022-11-24BUG/MINOR: ssl: shut the ca-file errors emitted during httpclient init
2022-11-24BUG/MEDIUM: quic: fix datagram dropping on queueing failed
2022-11-23BUG/MINOR: mux-h1: Fix handling of 408-Request-Time-Out
2022-11-23BUG/MEDIUM: mux-h1: Remove H1C_F_WAIT_NEXT_REQ flag on a next request
2022-11-22BUG/MEDIUM: mux-h1: Subscribe for reads on error on sending path
2022-11-22BUG/MEDIUM: mux-h1: Don't release H1C on timeout if there is a SC attached
2022-11-22BUG/MINOR: http-htx: Don't consider an URI as normalized after a set-uri action
2022-11-22BUG/MINOR: h1: Replace authority validation to conform RFC3986
2022-11-22BUG/MINOR: http-htx: Normalized absolute URIs with an empty port
2022-11-22BUG/MINOR: log: fix parse_log_message rfc5424 size check
2022-11-22BUG/MINOR: cfgparse-listen: fix ebpt_next_dup pointer dereference on proxy "from" inheritance
2022-11-22BUILD: sched: fix build with DEBUG_THREAD with the previous commit
2022-11-22BUG/MAJOR: sched: protect task during removal from wait queue
2022-11-21BUG/MINOR: server/idle: at least use atomic stores when updating max_used_conns
2022-11-21BUG/MINOR: resolvers: do not run the timeout task when there's no resolution
2022-11-20BUG/MAJOR: quic: Crash after discarding packet number spaces
2022-11-19BUG/MAJOR: quic: Crash upon retransmission of dgrams with several packets
2022-11-18BUG/MEDIUM: quic: fix memleak for out-of-order crypto data
2022-11-18BUG/MEDIUM: quic: fix unsuccessful handshakes on ncb_advance error
2022-11-18BUG/MEDIUM: peers: messages about unkown tables not correctly ignored
2022-11-18BUG/MINOR: ssl: don't initialize the keylog callback when not required
2022-11-18BUG/MEDIUM: raw-sock: Don't report connection error if something was received
2022-11-18BUG/MINOR: http_ana/txn: don't re-initialize txn and req var lists
2022-11-17BUG/MINOR: mux-h1: Fix error handling when H1S allocation failed on client side
2022-11-17BUG/MEDIUM: listener: Fix race condition when updating the global mngmt task
2022-11-17BUG/MINOR: pool/cli: use ullong to report total pool usage in bytes
2022-11-16BUG/MEDIUM: ring: fix creation of server in uninitialized ring
2022-11-16BUG/MINOR: mux-h1: Do not send a last null chunk on body-less answers
2022-11-16BUG/MINOR: ssl: SSL_load_error_strings might not be defined
2022-11-16BUG/MEDIUM: mux-fcgi: Avoid value length overflow when it doesn't fit at once
2022-11-16BUG/MINOR: mux-fcgi: Be sure to send empty STDING record in case of zero-copy
2022-11-16BUG/MINOR: resolvers: Set port before IP address when processing SRV records
2022-11-16BUG/MINOR: resolvers: Don't wait periodic resolution on healthcheck failure
2022-11-16BUG/MINOR: http-htx: Fix error handling during parsing http replies
2022-11-14BUG/MEDIUM: wdt/clock: properly handle early task hangs
2022-11-14BUG/MEDIUM: stick-table: fix a race condition when updating the expiration task
2022-11-14BUG/MINOR: ssl: Fix potential overflow
2022-11-14BUG/MINOR: ssl: crt-ignore-err memory leak with 'all' parameter
2022-11-10BUG/MINOR: ssl: bind_conf is uncorrectly accessed when using QUIC
2022-11-10BUG/MEDIUM: ssl: Verify error codes can exceed 63
2022-11-04BUG/MINOR: ssl: ocsp structure not freed properly in case of error
2022-11-04BUG/MINOR: ssl: Memory leak of AUTHORITY_KEYID struct when loading issuer
2022-11-04BUG/MINOR: ssl: Memory leak of DH BIGNUM fields
2022-11-04BUG/MINOR: httpclient: fixed memory allocation for the SSL ca_file
2022-10-27BUG/MINOR: quic: fix race condition on datagram purging
2022-10-27BUG/MINOR: log: fixing bug in tcp syslog_io_handler Octet-Counting
2022-10-26BUG/MINOR: quic: fix subscribe operation
2022-10-25BUG/MAJOR: stick-table: don't process store-response rules for applets
2022-10-24BUG/MINOR: sink: Set default connect/server timeout for implicit ring buffers
2022-10-24BUG/MINOR: sink: Only use backend capability for the sink proxies
2022-10-24BUG/MEDIUM: compression: handle rewrite errors when updating response headers
2022-10-21BUG/MINOR: mux-quic: complete flow-control for uni streams
2022-10-20BUG/MEDIUM: httpclient: check if the httpclient was released in the IO handler
2022-10-20BUG/MEDIUM: httpclient/lua: crash when the lua task timeout before the httpclient
2022-10-20BUG/MINOR: ring: Properly parse connect timeout
2022-10-20BUG/MINOR: log: Preserve message facility when the log target is a ring buffer
2022-10-18BUG/MINOR: quic: fix buffer overflow on retry token generation
2022-10-17BUG/MEDIUM: httpclient: segfault when the httpclient parser fails
2022-10-14BUG/MEDIUM: httpclient: Don't set EOM flag on an empty HTX message
2022-10-13BUG/MINOR: quic: Stalled 0RTT connections with big ClientHello TLS message
2022-10-12BUG/MINOR: server: make sure "show servers state" hides private bits
2022-10-12BUG/MEDIUM: mux-h1: Handle abort with an incomplete message during parsing
2022-10-12BUG/MEDIUM: mux-h1: Add connection error handling when reading/sending on a pipe
2022-10-12BUG/MINOR: stick-table: fix build with DEBUG_THREAD
2022-10-12BUG/MAJOR: stick-tables: do not try to index a server name for applets
2022-10-11BUG/MINOR: quic: set IP_PKTINFO socket option for QUIC receivers only
2022-10-05BUG/MINOR: hlua: hlua_channel_insert_data() behavior conflicts with documentation
2022-10-04BUG/MINOR: http-fetch: Update method after a prefetch in smp_fetch_meth()
2022-10-03BUG/MEDIUM: lua: handle stick table implicit arguments right.
2022-10-03BUG/MEDIUM: lua: Don't crash in hlua_lua2arg_check on failure
2022-10-03BUG/MINOR: mux-quic: ignore STOP_SENDING for locally closed stream
2022-10-03BUG/MINOR: quic: adjust quic_tls prototypes
2022-10-03BUG/MINOR: checks: update pgsql regex on auth packet
2022-10-03BUG/MINOR: backend: only enforce turn-around state when not redispatching
2022-10-03BUG/MINOR: config: insufficient syntax check of the global "maxconn" value
2022-10-03BUG/MAJOR: conn-idle: fix hash indexing issues on idle conns
2022-10-03BUG/MEDIUM: config: count line arguments without dereferencing the output
2022-09-30BUG/MINOR: config: don't count trailing spaces as empty arg (v2)
2022-09-30BUG/MINOR: hlua: prevent crash when loading numerous arguments using lua-load(per-thread)
2022-09-29BUG/MINOR: hlua: _hlua_http_msg_delete incorrect behavior when offset is used
2022-09-28BUG/MINOR: hlua: fixing hlua_http_msg_insert_data behavior
2022-09-28BUG/MINOR: hlua: fixing hlua_http_msg_del_data behavior
2022-09-28Revert "BUG/MINOR: config: don't count trailing spaces as empty arg"
2022-09-28BUG/MINOR: config: don't count trailing spaces as empty arg
2022-09-27BUG/MINOR: ring: fix the size check in ring_make_from_area()
2022-09-27BUG/MEDIUM: resolvers: Remove aborted resolutions from query_ids tree
2022-09-27BUG/MEDIUM: stconn: Reset SE descriptor when we fail to create a stream
2022-09-27BUG/MINOR: stream: Perform errors handling in right order in stream_new()
2022-09-23BUG/MINOR: hlua: fixing ambiguous sizeof in hlua_load_per_thread
2022-09-22BUG/MINOR: anon: memory illegal accesses in tools.c with hash_anon and hash_ipanon
2022-09-21BUG/MINOR: hlua: Remove \n in Lua error message built with memprintf
2022-09-21BUG/MINOR: smtpchk: SMTP Service check should gracefully close SMTP transaction
2022-09-20BUG/MINOR: log: improper behavior when escaping log data
2022-09-20BUG/MINOR: mux-h1: Account consumed output data on synchronous connection error
2022-09-20BUG/MEDIUM: mux-quic: properly trim HTX buffer on snd_buf reset
2022-09-20BUG/MINOR: mux-quic: do not keep detached qcs with empty Tx buffers
2022-09-19BUG/MEDIUM: mux-quic: fix nb_hreq decrement
2022-09-17BUG/MEDIUM: captures: free() an error capture out of the proxy lock
2022-09-17BUG/MEDIUM: server: segv when adding server with hostname from CLI
2022-09-16BUG/MINOR: mux-quic: do not remotely close stream too early
2022-09-15BUG/MEDIUM: mux-quic: fix crash on early app-ops release
2022-09-13BUG/MEDIUM: sink: bad init sequence on tcp sink from a ring.
2022-09-12BUG/MINOR: listener: null pointer dereference suspected by coverity
2022-09-12BUG/MINOR: mux-h1: Increment open_streams counter when H1 stream is created
2022-09-09BUG/MINOR: stats: fixing stat shows disabled frontend status as 'OPEN'
2022-09-09BUG/MEDIUM: proxy: ensure pause_proxy() and resume_proxy() own PROXY_LOCK
2022-09-09BUG/MINOR: signals/poller: ensure wakeup from signals
2022-09-08BUG/MINOR: h3: Crash when h3 trace verbosity is "minimal"
2022-09-08BUG/MINOR: quic: Trace fix about packet number space information.
2022-09-08BUG/MINOR: quic: Speed up the handshake completion only one time
2022-09-08BUG/MINOR: signals/poller: set the poller timeout to 0 when there are signals
2022-09-08DEBUG: quic: export the few task handlers that often appear in task dumps
2022-09-08DEBUG: resolvers: unstatify process_resolvers() to make it appear in profiling
2022-09-08DEBUG: task: simplify the caller recording in DEBUG_TASK
2022-09-08DEBUG: applet: instrument appctx_wakeup() to log the caller's location
2022-09-08DEBUG: task: use struct ha_caller instead of arrays of file:line
2022-09-08DEBUG: task: define a series of wakeup types for tasks and tasklets
2022-09-08BUG/MINOR: stream/sched: take into account CPU profiling for the last call
2022-09-08BUG/MINOR: sched: properly account for the CPU time of dying tasks
2022-09-08BUG/MINOR: task: make task_instant_wakeup() work on a task not a tasklet
2022-09-08BUG/MINOR: task: always reset a new tasklet's call date
2022-09-07BUG/MINOR: quic: Wrong connection ID to thread ID association
2022-09-06BUG/MINOR: quic: Possible crash when verifying certificates
2022-09-06BUG/MINOR: h1: Support headers case adjustment for TCP proxies
2022-09-06BUG/MINOR: quic: Possible crash with "tls-ticket-keys" on QUIC bind lines
2022-09-06BUG/MINOR: quic: Retransmitted frames marked as acknowledged
2022-09-02BUG/MINOR: http-act: initialize http fmt head earlier
2022-09-02DEBUG: stream: minor rearrangement of a few fields in struct stream.
2022-09-02BUG/MINOR: mux-fcgi: fix the "show fd" dest buffer for the subscriber
2022-09-02BUG/MINOR: mux-h1: fix the "show fd" dest buffer for the subscriber
2022-09-02BUG/MINOR: mux-h2: fix the "show fd" dest buffer for the subscriber
2022-09-02BUG/MINOR: httpclient: keep-alive was accidentely disabled
2022-09-02BUG/MINOR: httpclient: only ask for more room on failed writes
2022-09-02BUG/MEDIUM: httpclient: always detach the caller before self-killing
2022-09-02BUG/MINOR: h2: properly set the direction flag on HTX response
2022-09-02BUG/MINOR: quic: Frames leak during retransmissions
2022-09-02BUG/MINOR: quic: Do not ack when probing
2022-09-01BUG/MEDIUM: mux-h1: always use RST to kill idle connections in pools
2022-09-01BUG/MINOR: regex: Properly handle PCRE2 lib compiled without JIT support
2022-08-31BUG/MINOR: ssl: leak of ckch_inst_link in ckch_inst_free() v2
2022-08-31BUG/MINOR: quic: TX frames memleak
2022-08-31BUG/MINOR: dev/udp: properly preset the rx address size

Back to the list of branches and versions
Back to the HAProxy page