HAProxy known bugs for version v2.3.11 (maintenance branch 2.3) :  169 

This version (2.3.11) is a release belonging to maintenance branch 2.3 whose latest version is 2.3.21. 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.

Quick links

Other versions in the same branch

This branch contains the following releases :

DateVersionComment
2022-07-272.3.21 ⇐ last
2022-04-292.3.20 
2022-03-142.3.19 
2022-03-022.3.18 
2022-01-112.3.17 
2021-11-242.3.16 
2021-11-042.3.15 
2021-09-072.3.14 
2021-08-172.3.13 
2021-07-082.3.12 
2021-07-072.3.11 ⇐ yours
2021-04-232.3.10 
2021-03-302.3.9 
2021-03-252.3.8 
2021-03-162.3.7 
2021-03-032.3.6 
2021-02-062.3.5 
2021-01-132.3.4 
2021-01-082.3.3 
2020-11-282.3.2 
2020-11-132.3.1 
2020-11-052.3.0 

Known bugs affecting this version, and already fixed in the maintenance branch

These fixes have already been queued for a more recent 2.3 version. Some of them might have already been released in a more recent version than yours, and other ones might still be pending in the maintenance branch for a future release. The list may be empty if you're already on the latest version and no new fix was backported.

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 this version by category :

TotalCRITICALMAJORMEDIUMMINOR
169 0 17 73 79

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

Merge dateSubject - Severity (minor, medium, major, critical)
2022-07-27BUG/MEDIUM: wdt: don't trigger the watchdog when p is unitialized
2022-05-12BUG/MINOR: mux-h2: mark the stream as open before processing it not after
2022-05-11BUG/MAJOR: dns: multi-thread concurrency issue on UDP socket
2022-04-29BUG/MINOR: pools: make sure to also destroy shared pools in pool_destroy_all()
2022-04-29BUG/MINOR: rules: Fix check_capture() function to use the right rule arguments
2022-04-29BUG/MINOR: cache: Disable cache if applet creation fails
2022-04-29BUG/MEDIUM: compression: Don't forget to update htx_sl and http_msg flags
2022-04-29BUG/MEDIUM: fcgi-app: Use http_msg flags to know if C-L header can be added
2022-04-29BUG/MEDIUM: mux-h1: Don't request more room on partial trailers
2022-04-29BUG/MINOR: mux-h2: use timeout http-request as a fallback for http-keep-alive
2022-04-29BUG/MINOR: mux-h2: do not use timeout http-keep-alive on backend side
2022-04-29BUG/MINOR: cache: do not display expired entries in "show cache"
2022-04-29BUG/MINOR: mux-h2: do not send GOAWAY if SETTINGS were not sent
2022-04-29BUG/MEDIUM: http-act: Don't replace URI if path is not found or invalid
2022-04-29BUG/MEDIUM: http-conv: Fix url_enc() to not crush const samples
2022-04-29BUG/MINOR: fcgi-app: Don't add C-L header on response to HEAD requests
2022-04-29BUG/MAJOR: mux_pt: always report the connection error to the conn_stream
2022-04-29BUG/MINOR: cli/stream: fix "shutdown session" to iterate over all threads
2022-04-29BUG/MEDIUM: mux-h2: make use of http-request and keep-alive timeouts
2022-04-29BUG/MEDIUM: stream-int: do not rely on the connection error once established
2022-03-28BUG/MEDIUM: mux-h1: Properly detect full buffer cases when adding EOM block
2022-03-28BUG/MEDIUM: mux-h1: Properly detect full buffer cases during message parsing
2022-03-28BUG/MEDIUM: mux-fcgi: Properly handle return value of headers/trailers parsing
2022-03-28BUG/MINOR: tools: url2sa reads too far when no port nor path
2022-03-28BUG/MEDIUM: trace: avoid race condition when retrieving session from conn->owner
2022-03-28BUG/MEDIUM: mux-h1: only turn CO_FL_ERROR to CS_FL_ERROR with empty ibuf
2022-03-25BUG/MINOR: tools: fix url2sa return value with IPv4
2022-03-14BUG/MINOR: stream: make the call_rate only count the no-progress calls
2022-03-14BUG/MAJOR: mux-pt: Always destroy the backend connection on detach
2022-03-14DEBUG: stream: Fix stream trace message to print response buffer state
2022-03-14DEBUG: stream: Add the missing descriptions for stream trace events
2022-03-14BUG/MEDIUM: mcli: Properly handle errors and timeouts during reponse processing
2022-03-14DEBUG: cache: Update underlying buffer when loading HTX message in cache applet
2022-03-14BUG/MINOR: promex: Set conn-stream/channel EOI flags at the end of request
2022-03-14BUG/MINOR: cache: Set conn-stream/channel EOI flags at the end of request
2022-03-14BUG/MINOR: stats: Set conn-stream/channel EOI flags at the end of request
2022-03-14BUG/MINOR: hlua: Set conn-stream/channel EOI flags at the end of request
2022-03-14BUG/MINOR: cli: shows correct mode in "show sess"
2022-03-14BUG/MINOR: add missing modes in proxy_mode_str()
2022-03-01BUILD/MINOR: sched: drop the DEBUG_TASK parts from latest fix
2022-02-25BUG/MAJOR: sched: prevent rare concurrent wakeup of multi-threaded tasks
2022-02-25BUG/MINOR: task: do not set TASK_F_USR1 for no reason
2022-02-25BUG/MEDIUM: stream: Abort processing if response buffer allocation fails
2022-02-25BUG/MAJOR: mux-h2: Be sure to always report HTX parsing error to the app layer
2022-02-25BUG/MEDIUM: mux-h1: Don't wake h1s if mux is blocked on lack of output buffer
2022-02-25BUG/MEDIUM: htx: Be sure to have a buffer to perform a raw copy of a message
2022-02-25BUG/MINOR: tools: url2sa reads ipv4 too far
2022-02-25BUG/MINOR: mailers: negotiate SMTP, not ESMTP
2022-02-25BUG/MEDIUM: fd: always align fdtab[] to 64 bytes
2022-02-25BUG/MEDIUM: resolvers: Really ignore trailing dot in domain names
2022-02-25BUG/MINOR: sink: Use the right field in appctx context in release callback
2022-02-25BUG/MINOR: mworker: fix a FD leak of a sockpair upon a failed reload
2022-02-25BUG/MEDIUM: mworker: close unused transferred FDs on load failure
2022-02-25BUG/MAJOR: spoe: properly detach all agents when releasing the applet
2022-02-25BUG/MAJOR: http/htx: prevent unbounded loop in http_manage_server_side_cookies
2022-02-25BUG/MEDIUM: listener: read-lock the listener during accept()
2022-02-25BUG/MINOR: mworker: does not erase the pidfile upon reload
2022-02-25BUG/MEDIUM: mworker: don't lose the stats socket on failed reload
2022-01-26BUG/MEDIUM: mcli: always realign wrapping buffers before parsing them
2022-01-26BUG/MEDIUM: mcli: do not try to parse empty buffers
2022-01-26BUG/MEDIUM: cli: Never wait for more data on client shutdown
2022-01-26BUG/MINOR: cli: avoid O(bufsize) parsing cost on pipelined commands
2022-01-26BUG/MEDIUM: htx: Adjust length to add DATA block in an empty HTX buffer
2022-01-11BUG/MEDIUM: mworker: don't use _getsocks in wait mode
2022-01-10BUG/MEDIUM: http-ana: Preserve response's FLT_END analyser on L7 retry
2022-01-10BUG/MINOR: cli: fix _getsocks with musl libc
2022-01-10BUG/MINOR: ssl: free the fields in srv->ssl_ctx
2021-12-24BUG/MINOR: pools: don't mark ourselves as harmless in DEBUG_UAF mode
2021-12-24BUG/MINOR: backend: restore the SF_SRV_REUSED flag original purpose
2021-12-24BUG/MINOR: backend: do not set sni on connection reuse
2021-12-24BUG/MEDIUM: mworker/cli: crash when trying to access an old PID in prompt mode
2021-12-07CI: Fix DEBUG_STRICT definition for Coverity
2021-12-07CI: Set DEBUG=-DDEBUG_STRICT=1 in GitHub Actions
2021-12-02BUG/MAJOR: segfault using multiple log forward sections.
2021-12-02BUG/MEDIUM: resolvers: Detach query item on response error
2021-12-02BUG/MEDIUM: cli: Properly set stream analyzers to process one command at a time
2021-11-23MINOR: shctx: add a few BUG_ON() for consistency checks
2021-11-23BUG/MINOR: shctx: do not look for available blocks when the first one is enough
2021-11-23BUG/MEDIUM: shctx: leave the block allocator when enough blocks are found
2021-11-23BUG/MEDIUM: mux-h2: always process a pending shut read
2021-11-23BUG/MEDIUM: ssl: abort with the correct SSL error when SNI not found
2021-11-23BUG/MINOR: stick-table/cli: Check for invalid ipv6 key
2021-11-23BUG/MEDIUM: connection: make cs_shutr/cs_shutw//cs_close() idempotent
2021-11-23BUG/MINOR: mux-h2: Fix H2_CF_DEM_SHORT_READ value
2021-11-23BUG/MINOR: mworker: doesn't launch the program postparser
2021-11-23BUG/MEDIUM: conn-stream: Don't reset CS flags on close
2021-11-23Revert "BUG/MINOR: http-ana: Don't eval front after-response rules if stopped on back"
2021-11-23BUG/MINOR: http-ana: Apply stop to the current section for http-response rules
2021-11-23BUG/MEDIUM: ssl: backend TLS resumption with sni and TLSv1.3
2021-11-16BUG/MEDIUM: mux-h1: Fix H1C_F_ST_SILENT_SHUT value
2021-11-03BUG/MINOR: halog: Add missing newlines in die() messages
2021-11-03BUG/MINOR: sample: fix backend direction flags consecutive to last fix
2021-11-03BUG/MEDIUM: sample: Cumulate frontend and backend sample validity flags
2021-11-03BUG/MINOR: vars: properly set the argument parsing context in the expression
2021-11-03BUG/MINOR: vars: improve accuracy of the rules used to check expression validity
2021-11-03BUG/MEDIUM: stream-int: Block reads if channel cannot receive more data
2021-11-03BUG/MINOR: http: Authorization value can have multiple spaces after the scheme
2021-11-03BUG/MEDIUM: http-ana: Drain request data waiting the tarpit timeout expiration
2021-11-03BUG/MEDIUM: resolvers: Track api calls with a counter to free resolutions
2021-11-03BUG/MEDIUM: resolvers: Don't recursively perform requester unlink
2021-11-03BUG/MEDIUM: mux-h1: Perform a connection shutdown when the h1c is released
2021-11-03BUG/MINOR: mux-h1: Save shutdown mode if the shutdown is delayed
2021-11-03BUG/MINOR: mux-h2: do not prevent from sending a final GOAWAY frame
2021-11-03BUG/MAJOR: buf: fix varint API post- vs pre- increment
2021-11-03BUG/MEDIUM: resolvers: always check a valid item in query_list
2021-11-03BUG/MAJOR: resolvers: add other missing references during resolution removal
2021-11-03BUG/MEDIUM: resolvers: use correct storage for the target address
2021-11-03BUG/MEDIUM: resolvers: fix truncated TLD consecutive to the API fix
2021-11-03BUG/MINOR: resolvers: do not reject host names of length 255 in SRV records
2021-11-03BUG/MEDIUM: resolver: make sure to always use the correct hostname length
2021-11-03BUG/MEDIUM: tcpcheck: Properly catch early HTTP parsing errors
2021-10-19BUG/MEDIUM: sample: properly verify that variables cast to sample
2021-10-19BUG/MEDIUM: stream: Keep FLT_END analyzers if a stream detects a channel error
2021-10-19BUG/MINOR: http-ana: Don't eval front after-response rules if stopped on back
2021-10-19BUG/MEDIUM: mux_h2: Handle others remaining read0 cases on partial frames
2021-10-19BUG/MEDIUM: stream-int: Defrag HTX message in si_cs_recv() if necessary
2021-10-08BUG/MEDIUM: leastconn: fix rare possibility of divide by zero
2021-10-04BUG/MEDIUM: http-ana: Clear request analyzers when applying redirect rule
2021-10-04BUG/MEDIUM: filters: Fix a typo when a filter is attached blocking the release
2021-10-04MINOR: tasks: catch TICK_ETERNITY with BUG_ON() in __task_queue()
2021-10-04BUG/MINOR: tcp-rules: Stop content rules eval on read error and end-of-input
2021-10-04BUG/MINOR: tcpcheck: Don't use arg list for default proxies during parsing
2021-10-04BUG/MAJOR: lua: use task_wakeup() to properly run a task once
2021-10-04BUG/MEDIUM: lua: fix wakeup condition from sleep()
2021-10-04BUG/MINOR: mux-h1/mux-fcgi: Sanitize TE header to only send "trailers"
2021-10-04BUG/MEDIUM: stream: Stop waiting for more data if SI is blocked on RXBLK_ROOM
2021-10-04BUG/MEDIUM: stream-int: Notify stream that the mux wants more room to xfer data
2021-10-04BUG/MEDIUM: mux-h1: Adjust conditions to ask more space in the channel buffer
2021-10-01BUG/MINOR: http-ana: increment internal_errors counter on response error
2021-10-01BUG/MINOR: h1-htx: Fix a typo when request parser is reset
2021-10-01BUG/MINOR: server: allow 'enable health' only if check configured
2021-09-20BUG/MINOR: cli/payload: do not search for args inside payload
2021-09-20BUG/MINOR: tcpcheck: Improve LDAP response parsing to fix LDAP check
2021-09-20BUG/MINOR: compat: make sure __WORDSIZE is always defined
2021-09-20BUG/MEDIUM: stream-int: Don't block SI on a channel policy if EOI is reached
2021-09-20BUG/MINOR: systemd: ExecStartPre must use -Ws
2021-09-20BUG/MINOR: filters: Set right FLT_END analyser depending on channel
2021-09-20BUG/MINOR: filters: Always set FLT_END analyser when CF_FLT_ANALYZE flag is set
2021-09-20BUG/MEDIUM: http-ana: Reset channels analysers when returning an error
2021-09-20BUG/MINOR: stream: Don't release a stream if FLT_END is still registered
2021-09-20BUG/MINOR: lua: Don't yield in channel.append() and channel.set()
2021-09-20BUG/MINOR: lua: Yield in channel functions only if lua context can yield
2021-09-07Revert "BUG/MINOR: stream-int: Don't block reads in si_update_rx() if chn may receive"
2021-09-03BUG/MAJOR: htx: fix missing header name length check in htx_add_header/trailer
2021-09-03BUG/MINOR: config: reject configs using HTTP with bufsize >= 256 MB
2021-09-03BUG/MINOR: vars: fix set-var/unset-var exclusivity in the keyword parser
2021-09-03BUG/MINOR: tools: Fix loop condition in dump_text()
2021-09-03BUG/MINOR threads: Use get_(local|gm)time instead of (local|gm)time
2021-09-03BUG/MINOR: ebtree: remove dependency on incorrect macro for bits per long
2021-09-03BUG/MINOR: lua: use strlcpy2() not strncpy() to copy sample keywords
2021-09-03BUG/MEDIUM: base64: check output boundaries within base64{dec,urldec}
2021-09-03BUG/MINOR: stick-table: fix the sc-set-gpt* parser when using expressions
2021-08-27BUG/MEDIUM: sock: really fix detection of early connection failures in for 2.3-
2021-08-20BUG/MEDIUM: h2: match absolute-path not path-absolute for :path
2021-08-17BUG/MEDIUM: h2: give :authority precedence over Host
2021-08-17BUG/MAJOR: h2: enforce stricter syntax checks on the :method pseudo-header
2021-08-17BUG/MAJOR: h2: verify that :path starts with a '/' before concatenating it
2021-08-17BUG/MAJOR: h2: verify early that non-http/https schemes match the valid syntax
2021-08-13BUG/MEDIUM: cfgcheck: verify existing log-forward listeners during config check
2021-08-12BUG/MEDIUM: spoe: Fix policy to close applets when SPOE connections are queued
2021-08-12BUG/MINOR: tcpcheck: Properly detect pending HTTP data in output buffer
2021-08-12BUG/MINOR: buffer: fix buffer_dump() formatting
2021-08-12BUG/MEDIUM: spoe: Create a SPOE applet if necessary when the last one is released
2021-08-12BUG/MINOR: server: update last_change on maint->ready transitions too
2021-08-12BUG/MINOR: pollers: always program an update for migrated FDs
2021-08-12BUG/MINOR: poll: fix abnormally high skip_fd counter
2021-08-12BUG/MINOR: select: fix excess number of dead/skip reported
2021-08-12BUG/MEDIUM: pollers: clear the sleeping bit after waking up, not before
2021-08-12BUG/MINOR: connection: Add missing error labels to conn_err_code_str
2021-08-12BUG/MEDIUM: mux-h2: Handle remaining read0 cases on partial frames
2021-07-27BUG/MINOR: mux-h2: Obey dontlognull option during the preface
2021-07-27BUG/MINOR: systemd: must check the configuration using -Ws
2021-07-27BUG/MINOR: resolvers: Use a null-terminated string to lookup in servers tree
2021-07-27BUG/MINOR: check: fix the condition to validate a port-less server
2021-07-27BUG/MEDIUM: ssl_sample: fix segfault for srv samples on invalid request
2021-07-27BUG/MINOR: mworker: do not export HAPROXY_MWORKER_REEXEC across programs
2021-07-27BUG/MEDIUM: mworker: do not register an exit handler if exit is expected
2021-07-08BUG/MAJOR: pools: second fix for incomplete backport of lockless pool fix
2021-07-08BUG/MAJOR: pools: fix incomplete backport of lockless pool fix

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