HAProxy known bugs for maintenance branch 2.2 :  0 

This is maintenance branch 2.2 whose latest version is 2.2.31. 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 2.2 version other than 2.2.31, you're running with known bugs.

Quick links

Versions available in this branch

This branch contains the following releases :

DateVersionComment
2023-08-192.2.31 ⇐ last
2023-06-122.2.30 
2023-02-142.2.29 
2023-01-312.2.28 
2023-01-272.2.27 
2022-12-092.2.26 
2022-07-282.2.25 
2022-05-132.2.24 
2022-05-062.2.23 
2022-03-142.2.22 
2022-03-022.2.21 
2022-01-122.2.20 
2021-11-292.2.19 
2021-11-052.2.18 
2021-09-072.2.17 
2021-08-172.2.16 
2021-07-162.2.15 
2021-04-292.2.14 
2021-04-022.2.13 
2021-03-312.2.12 
2021-03-182.2.11 
2021-03-032.2.10 
2021-02-062.2.9 
2021-01-132.2.8 
2021-01-082.2.7 
2020-11-302.2.6 
2020-11-052.2.5 
2020-09-302.2.4 
2020-09-082.2.3 
2020-07-312.2.2 
2020-07-232.2.1 
2020-07-072.2.0 

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

These fixes have already been queued for the next 2.2 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
0 0 0 0 0

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

Merge dateSubject - Severity (minor, medium, major, critical)

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
2023-11-28BUG/MINOR: cache: Remove incomplete entries from the cache when stream is closed
2023-11-28BUG/MEDIUM: mux-h2: Remove H2_SF_NOTIFIED flag for H2S blocked on fast-forward
2023-11-28BUG/MEDIUM: stconn: Don't perform zero-copy FF if opposite SC is blocked
2023-11-28BUG/MINOR: quic: fix CONNECTION_CLOSE_APP encoding
2023-11-27BUG/MEDIUM: mux-h1: Properly ignore trailers when a content-length is announced
2023-11-24BUG/MINOR: global: Fix tune.disable-(fast-forward/zero-copy-forwarding) options
2023-11-23BUG/MEDIUM: mux-h1: Don't set CO_SFL_MSG_MORE flag on last fast-forward send
2023-11-23DEBUG: tinfo: store the pthread ID and the stack pointer in tinfo
2023-11-23BUG/MINOR: server: do not leak default-server in defaults sections
2023-11-22BUG/MINOR: quic: Possible RX packet memory leak under heavy load
2023-11-22BUG/MINOR: quic: Possible leak of TX packets under heavy load
2023-11-22BUG/MEDIUM: quic: Possible crash during retransmissions and heavy load
2023-11-20DEBUG: connection/flags: update flags for reverse HTTP
2023-11-20BUG/MEDIUM: quic: Possible crash for connections to be killed
2023-11-20BUG/MAJOR: quic: complete thread migration before tcp-rules
2023-11-20BUG/MINOR: sock: mark abns sockets as non-suspendable and always unbind them
2023-11-20BUG/MINOR: startup: set GTUNE_SOCKET_TRANSFER correctly
2023-11-18BUG/MINOR: proxy/stktable: missing frees on proxy cleanup
2023-11-17BUG/MINOR: stream/cli: report correct stream age in "show sess"
2023-11-17BUG/MEDIUM: mux-fcgi: fail earlier on malloc in takeover()
2023-11-17BUG/MEDIUM: mux-h1: fail earlier on malloc in takeover()
2023-11-17BUG/MEDIUM: mux-h2: fail earlier on malloc in takeover()
2023-11-17BUG/MINOR: quic: Malformed CONNECTION_CLOSE frame
2023-11-17BUG/MINOR: shctx: Remove old HA_SPIN_INIT
2023-11-17BUG/MINOR: stconn: Report read activity on non-indep streams for partial sends
2023-11-17BUG/MINOR: stconn/applet: Report send activity only if there was output data
2023-11-17BUG/MINOR: stconn: Use HTX-aware channel's functions to get info on buffer
2023-11-17BUG/MINOR: stconn: Fix streamer detection for HTX streams
2023-11-17BUG/MEDIUM: stconn: Update fsb date on partial sends
2023-11-16BUG/MINOR: mux_h2: reject passive reverse conn if error on add to idle
2023-11-14BUG/MEDIUM: stream: Don't call mux .ctl() callback if not implemented
2023-11-14BUG/MEDIUM: mworker: set the master variable earlier
2023-11-14BUG/MEDIUM: stream: Properly handle abortonclose when set on backend only
2023-11-14BUG/MINOR: stconn: Handle abortonclose if backend connection was already set up
2023-11-14BUG/MEDIUM: connection: report connection errors even when no mux is installed
2023-11-13BUG/MINOR: quic: maximum window limits do not match the doc
2023-11-13BUG/MEDIUM: quic: Non initialized CRYPTO data stream deferencing
2023-11-13BUG/MEDIUM: quic: fix FD for quic_cc_conn
2023-11-13BUG/MINOR: quic: fix decrement of half_open counter on qc alloc failure
2023-11-13BUG/MINOR: quic: fix crash on qc_new_conn alloc failure
2023-11-13BUG/MINOR: log: keep the ref in dup_logger()
2023-11-13BUG/MINOR: sample: Fix bytes converter if offset is bigger than sample length
2023-11-13BUG/MEDIUM: proxy: always initialize the default settings after init
2023-11-10BUG/MINOR: quic: Useless use of non-contiguous buffer for in order CRYPTO data
2023-11-10BUG/MINOR: sink: don't learn srv port from srv addr
2023-11-10BUG/MEDIUM: server: invalid address (post)parsing checks
2023-11-10BUG/MEDIUM: applet: Remove appctx from buffer wait list on release
2023-11-10BUG/MINOR: quic: remove dead code in error path
2023-11-09BUG/MINOR: quic: fix retry token check inconsistency
2023-11-09BUG/MEDIUM: mux-h1: Exit early if fast-forward is not supported by opposite SC
2023-11-09BUG/MEDIUM: stconn: Don't update stream expiration date if already expired
2023-11-09BUG/MEDIUM: quic: Possible crashes during secrets allocations (heavy load)
2023-11-09BUG/MEDIUM: quic: Avoid some crashes upon TX packet allocation failures
2023-11-09BUG/MEDIUM: quic: Possible crashes when sending too short Initial packets
2023-11-09BUG/MEDIUM: quic: Avoid trying to send ACK frames from an empty ack ranges tree
2023-11-09BUG/MEDIUM: quic: Too short Initial packet sent (enc. level allocation failed)
2023-11-09BUG/MINOR: quic: idle timer task requeued in the past
2023-11-08BUG/MEDIUM: pool: try once to allocate from another bucket if empty
2023-11-08BUG/MINOR: pool: check one other random bucket on alloc conflict
2023-11-08BUG/MEDIUM: pool: fix releasable pool calculation when overloaded
2023-11-08BUG/MEDIUM: freq-ctr: Don't report overshoot for long inactivity period
2023-11-08BUG/MINOR: mux-h1: Properly handle http-request and http-keep-alive timeouts
2023-11-08BUG/MINOR: stick-table/cli: Check for invalid ipv4 key
2023-11-08BUG/MINOR: mux-h1: Release empty ibuf during data fast-forwarding
2023-11-07BUG/MEDIUM: mux-h1: Be sure xprt support splicing to use it during fast-forward
2023-11-07BUG/MEDIUM: quic: fix sslconns on quic_conn alloc failure
2023-11-07BUG/MEDIUM: quic: fix actconn on quic_conn alloc failure
2023-11-07BUG/MINOR: stconn: Sanitize report for read activity
2023-11-07BUG/MEDIUM: Don't apply a max value on room_needed in sc_need_room()
2023-11-07BUG/MEDIUM: stconn: Don't report rcv/snd expiration date if SC cannot epxire
2023-11-07BUG/MEDIUM: stconn: Report send activity during mux-to-mux fast-forward
2023-11-04BUG/MINOR: server: remove some incorrect free() calls on null elements
2023-11-04BUG/MEDIUM: pattern: don't trim pools under lock in pat_ref_purge_range()
2023-11-03BUG/MINOR: cfgparse/stktable: fix error message on stktable_init() failure
2023-11-03BUG/MINOR: stktable: missing free in parse_stick_table()
2023-11-03BUG/MINOR: proto_reverse_connect: support SNI on active connect
2023-10-31BUG/MINOR: tcpcheck: Report hexstring instead of binary one on check failure
2023-10-30BUG/MEDIUM: ssl: segfault when cipher is NULL
2023-10-27BUG/MINOR: mux-quic: fix early close if unset client timeout
2023-10-26BUG/MINOR: ssl: suboptimal certificate selection with TLSv1.3 and dual ECDSA/RSA
2023-10-26BUG/MINOR: ssl: use a thread-safe sslconns increment
2023-10-26BUG/MINOR: quic: do not consider idle timeout on CLOSING state
2023-10-25DEBUG: pools: detect that malloc_trim() is in progress
2023-10-25DEBUG: lua: add tainted flags for stuck Lua contexts
2023-10-25DEBUG: add a tainted flag when ha_panic() is called
2023-10-25BUG/MEDIUM: server: "proto" not working for dynamic servers
2023-10-25BUG/MEDIUM: server/log: "mode log" after server keyword causes crash
2023-10-25DEBUG: mux-h2/flags: fix list of h2c flags used by the flags decoder
2023-10-25BUG/MAJOR: backend: fix idle conn crash under low FD
2023-10-25BUG/MINOR: backend: fix wrong BUG_ON for avail conn
2023-10-23BUG/MINOR: ssl: load correctly @system-ca when ca-base is define
2023-10-20BUG/MINOR: mux-h2: update tracked counters with req cnt/req err
2023-10-20BUG/MINOR: mux-h2: commit the current stream ID even on reject
2023-10-20BUG/MEDIUM: peers: Fix synchro for huge number of tables
2023-10-19BUG/MEDIUM: peers: Be sure to always refresh recconnect timer in sync task
2023-10-19BUG/MINOR: trace: fix trace parser error reporting
2023-10-18BUG/MINOR: mux-h2: fix http-request and http-keep-alive timeouts again
2023-10-17BUG/MEDIUM: mux-h2: Don't report an error on shutr if a shutw is pending
2023-10-17BUG/MINOR: htpp-ana/stats: Specify that HTX redirect messages have a C-L header
2023-10-17BUG/MEDIUM: mux-h1: do not forget TLR/EOT even when no data is sent
2023-10-17BUG/MEDIUM: quic_conn: let the scheduler kill the task when needed
2023-10-17DEBUG: pool: store the memprof bin on alloc() and update it on free()
2023-10-17BUG/MINOR: mux-h2: make up other blocked streams upon removal from list
2023-10-13BUG/MINOR: mux-h1: Send a 400-bad-request on shutdown before the first request
2023-10-13BUG/MEDIUM: applet: Report a send activity everytime data were sent
2023-10-13BUG/MEDIUM: stconn: Report a send activity everytime data were sent
2023-10-13BUG/MEDIUM: quic-conn: free unsent frames on retransmit to prevent crash
2023-10-13BUG/MINOR: mux-quic: fix free on qcs-new fail alloc
2023-10-13BUG/MINOR: quic: fix free on quic-conn fail alloc
2023-10-13BUG/MINOR: quic: fix qc.cids access on quic-conn fail alloc
2023-10-12BUG/MAJOR: connection: make sure to always remove a connection from the tree
2023-10-11BUG/MINOR: h3: strengthen host/authority header parsing
2023-10-11BUG/MINOR: mux-quic: support initial 0 max-stream-data
2023-10-11BUG/MEDIUM: mux-quic: fix RESET_STREAM on send-only stream
2023-10-11BUG/MINOR: quic: reject packet with no frame
2023-10-11BUG/MINOR: quic: Avoid crashing with unsupported cryptographic algos
2023-10-06BUG/MEDIUM: actions: always apply a longest match on prefix lookup
2023-10-06BUG/MEDIUM: stconn: Fix comparison sign in sc_need_room()
2023-10-04BUG/MINOR: hq-interop: simplify parser requirement
2023-10-04BUG/MINOR: h1-htx: Keep flags about C-L/T-E during HEAD response parsing
2023-10-04BUG/MEDIUM: mux-h1; Ignore headers modifications about payload representation
2023-10-04BUG/MEDIUM: mux-h1: Add C-L header in outgoing message if it was removed
2023-10-04BUG/MEDIUM: h1: Ignore C-L value in the H1 parser if T-E is also set
2023-10-04BUG/MINOR: mux-h1: Ignore C-L when sending H1 messages if T-E is also set
2023-10-04BUG/MINOR: mux-h1: Handle read0 in rcv_pipe() only when data receipt was tried
2023-10-04DEBUG: mux-h1: Fix event label from trace messages about payload formatting
2023-10-04BUG/MEDIUM: hlua: Initialize appctx used by a lua socket on connect only
2023-10-03BUG/MAJOR: plock: fix major bug in pl_take_w() introduced with EBO
2023-09-30BUG/MINOR: proto_reverse_connect: fix FD leak upon connect
2023-09-29BUG/MINOR: tcp_act: fix attach-srv rule ACL parsing
2023-09-29BUG/MINOR: proto_reverse_connect: fix FD leak on connection error
2023-09-29Revert "BUG/MEDIUM: quic: missing check of dcid for init pkt including a token"
2023-09-28BUG/MINOR: mux-quic: remove full demux flag on ncbuf release
2023-09-22BUG/MINOR: proto_reverse_connect: set default maxconn
2023-09-21BUG/MINOR: proto_reverse_connect: fix preconnect with startup name resolution
2023-09-21BUG/MEDIUM: server/cli: don't delete a dynamic server that has streams
2023-09-21BUG/MEDIUM: http-ana: Try to handle response before handling server abort
2023-09-15BUG/MINOR: server: add missing free for server->rdr_pfx
2023-09-14BUG/MAJOR: mux-h2: Report a protocol error for any DATA frame before headers
2023-09-14BUG/MINOR: freq_ctr: fix possible negative rate with the scaled API
2023-09-13BUG/MINOR: quic: Leak of frames to send.
2023-09-13BUG/MEDIUM: master/cli: Pin the master CLI on the first thread of the group 1
2023-09-12BUG/MINOR: promex: fix backend_agg_check_status
2023-09-12BUG/MEDIUM: mux-fcgi: Don't swap trash and dbuf when handling STDERR records
2023-09-12BUG/MINOR: hlua/init: coroutine may not resume itself
2023-09-12BUG/MEDIUM: hlua: don't pass stale nargs argument to lua_resume()
2023-09-12DEBUG: pools: print the contents surrounding the expected tag location
2023-09-12DEBUG: pools: also print the value of the tag when it doesn't match
2023-09-12DEBUG: pools: also print the item's pointer when crashing
2023-09-12BUG/MEDIUM: quic: quic_cc_conn ->cntrs counters unreachable
2023-09-11DEBUG: pools: inspect pools on fatal error and dump information found
2023-09-11DEBUG: pools: make pool_check_pattern() take a pointer to the pool
2023-09-11DEBUG: pools: pass the caller pointer to the check functions and macros
2023-09-11DEBUG: pools: always record the caller for uncached allocs as well
2023-09-11BUG/MINOR: quic: fdtab array underflow access
2023-09-08BUG/MINOR: quic: Wrong cluster secret initialization
2023-09-06BUG/MEDIUM: ring: adjust maxlen consistency check
2023-09-06BUG/MINOR: hlua/action: incorrect message on E_YIELD error
2023-09-06BUG/MINOR: quic: Dereferenced unchecked pointer to Handshke packet number space
2023-09-06BUG/MINOR: ring/cli: Don't expect input data when showing events
2023-09-06BUG/MINOR: applet: Always expect data when CLI is waiting for a new command
2023-09-06BUG/MEDIUM: stconn/stream: Forward shutdown on write timeout
2023-09-06BUG/MEDIUM: applet: Report an error if applet request more room on aborted SC
2023-09-06BUG/MEDIUM: stconn: Report read activity when a stream is attached to front SC
2023-09-06BUG/MEDIUM: applet: Fix API for function to push new data in channels buffer
2023-09-06BUG/MINOR: stconn: Don't inhibit shutdown on connection on error
2023-09-05BUG/MINOR: quic: Wrong RTT computation (srtt and rrt_var)
2023-09-05BUG/MINOR: quic: Wrong RTT adjusments
2023-09-05BUG/MINOR: quic: Unchecked pointer to Handshake packet number space
2023-09-04BUILD: bug: make BUG_ON() void to avoid a rare warning
2023-09-04BUG/MINOR: stream: further protect stream_dump() against incomplete sessions
2023-09-04BUG/MEDIUM: h1-htx: Ensure chunked parsing with full output buffer
2023-09-04BUG/MEDIUM: connection: fix pool free regression with recent ppv2 TLV patches
2023-09-04BUG/MINOR: quic: Unchecked pointer to packet number space dereferenced
2023-09-04BUG/MAJOR: quic: Really ignore malformed ACK frames.
2023-09-04BUG/MINOR: quic: Possible skipped RTT sampling
2023-09-01BUG/MEDIUM: stconn: Don't block sends if there is a pending shutdown
2023-09-01BUG/MEDIUM: stconn: Wake applets on sending path if there is a pending shutdown
2023-09-01BUG/MINOR: stconn: Don't report blocked sends during connection establishment
2023-09-01BUG/MEDIUM: stconn: Update stream expiration date on blocked sends
2023-09-01DEBUG: applet: Properly report opposite SC expiration dates in traces
2023-09-01BUG/MINOR: checks: do not queue/wake a bounced check
2023-08-29BUG/MINOR: stream: protect stream_dump() against incomplete streams
2023-08-28BUG/MINOR: ssl/cli: can't find ".crt" files when replacing a certificate
2023-08-26BUG/MEDIUM: mux-h2: fix crash when checking for reverse connection after error
2023-08-25BUG/MINOR: ssl_sock: fix possible memory leak on OOM
2023-08-25BUG/MINOR: hlua_fcn: potentially unsafe stktable_data_ptr usage
2023-08-24BUG/MINOR: h2: fix reverse if no timeout defined
2023-08-21BUG/MINOR: quic: ssl_quic_initial_ctx() uses error count not error code
2023-08-21BUG/MINOR: quic: allow-0rtt warning must only be emitted with quic bind

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