HAProxy known bugs for version v2.2.17 (maintenance branch 2.2) :  206 

This version (2.2.17) is a release belonging to maintenance branch 2.2 whose latest version is 2.2.25. 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-282.2.25 ⇐ last
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 ⇐ yours
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 

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

These fixes have already been queued for a more recent 2.2 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
206 0 12 93 101

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

Merge dateSubject - Severity (minor, medium, major, critical)
2022-11-25BUG/MINOR: server/idle: at least use atomic stores when updating max_used_conns
2022-11-25BUG/MEDIUM: peers: messages about unkown tables not correctly ignored
2022-11-25BUG/MINOR: ssl: don't initialize the keylog callback when not required
2022-11-25BUG/MINOR: http_ana/txn: don't re-initialize txn and req var lists
2022-11-25BUG/MEDIUM: listener: Fix race condition when updating the global mngmt task
2022-11-25BUG/MINOR: pool/cli: use ullong to report total pool usage in bytes
2022-11-25BUG/MEDIUM: ring: fix creation of server in uninitialized ring
2022-11-25BUG/MINOR: resolvers: Set port before IP address when processing SRV records
2022-11-25BUG/MINOR: http-htx: Fix error handling during parsing http replies
2022-11-25BUG/MINOR: ssl: ocsp structure not freed properly in case of error
2022-11-25BUG/MINOR: ssl: Memory leak of AUTHORITY_KEYID struct when loading issuer
2022-11-25BUG/MEDIUM: stick-table: fix a race condition when updating the expiration task
2022-10-25BUG/MAJOR: stick-table: don't process store-response rules for applets
2022-10-25BUG/MEDIUM: compression: handle rewrite errors when updating response headers
2022-10-25BUG/MINOR: server: make sure "show servers state" hides private bits
2022-10-25BUG/MAJOR: stick-tables: do not try to index a server name for applets
2022-10-25BUG/MINOR: smtpchk: SMTP Service check should gracefully close SMTP transaction
2022-10-25BUG/MINOR: mux-h1: Account consumed output data on synchronous connection error
2022-10-25BUG/MINOR: http-fetch: Update method after a prefetch in smp_fetch_meth()
2022-10-25BUG/MEDIUM: lua: handle stick table implicit arguments right.
2022-10-25BUG/MEDIUM: lua: Don't crash in hlua_lua2arg_check on failure
2022-10-25BUG/MINOR: checks: update pgsql regex on auth packet
2022-09-28BUG/MEDIUM: resolvers: Remove aborted resolutions from query_ids tree
2022-09-20BUG/MEDIUM: sink: bad init sequence on tcp sink from a ring.
2022-09-20BUG/MINOR: log: improper behavior when escaping log data
2022-09-20BUG/MEDIUM: captures: free() an error capture out of the proxy lock
2022-09-20BUG/MEDIUM: proxy: ensure pause_proxy() and resume_proxy() own PROXY_LOCK
2022-09-20BUG/MINOR: signals/poller: ensure wakeup from signals
2022-09-20BUG/MINOR: signals/poller: set the poller timeout to 0 when there are signals
2022-09-20BUG/MINOR: h1: Support headers case adjustment for TCP proxies
2022-08-30BUG/MINOR: tcpcheck: Disable QUICKACK for default tcp-check (with no rule)
2022-08-30BUG/MEDIUM: peers: Don't start resync on reload if local peer is not up-to-date
2022-08-30BUG/MEDIUM: peers: Don't use resync timer when local resync is in progress
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/MINOR: tcpcheck: Disable QUICKACK only if data should be sent after connect
2022-08-30BUG/MINOR: resolvers: return the correct value in resolvers_finalize_config()
2022-08-30BUG/MEDIUM: mux-h2: do not fiddle with ->dsi to indicate demux is idle
2022-08-30BUG/MEDIUM: http-ana: fix crash or wrong header deletion by http-restrict-req-hdr-names
2022-08-30BUG/MINOR: sink: fix a race condition between the writer and the reader
2022-08-30BUG/MINOR: ring/cli: fix a race condition between the writer and the reader
2022-08-30BUG/MEDIUM: proxy: Perform a custom copy for default server settings
2022-08-30BUG/MINOR: peers: Use right channel flag to consider the peer as connected
2022-08-30BUG/MEDIUM: peers: limit reconnect attempts of the old process on reload
2022-07-27BUG/MINOR: sockpair: wrong return value for fd_send_uxst()
2022-07-27BUG/MINOR: backend: Fallback on RR algo if balance on source is impossible
2022-07-27BUG/MEDIUM: mux-h1: Handle connection error after a synchronous send
2022-07-27BUG/MEDIUM: http-ana: Don't wait to have an empty buf to switch in TUNNEL state
2022-07-27BUG/MINOR: peers: fix possible NULL dereferences at config parsing
2022-07-27BUG/MINOR: http-act: Properly generate 103 responses when several rules are used
2022-07-27BUG/MINOR: http-check: Preserve headers if not redefined by an implicit rule
2022-07-27BUG/MINOR: peers/config: always fill the bind_conf's argument
2022-07-27BUG/MINOR: http-fetch: Use integer value when possible in "method" sample fetch
2022-07-27BUG/MINOR: http-ana: Set method to HTTP_METH_OTHER when an HTTP txn is created
2022-07-27BUG/MINOR: ssl: Do not look for key in extra files if already in pem
2022-07-27BUG/MEDIUM: ssl/cli: crash when crt inserted into a crt-list
2022-07-27BUG/MINOR: tcp-rules: Make action call final on read error and delay expiration
2022-07-27BUG/MINOR: cli/stats: add missing trailing LF after "show info json"
2022-07-27BUG/MINOR: server: do not enable DNS resolution on disabled proxies
2022-07-27BUG/MINOR: cli/stats: add missing trailing LF after JSON outputs
2022-07-27BUG/MEDIUM: mailers: Set the object type for check attached to an email alert
2022-07-27BUG/MINOR: ssl_ckch: Fix possible uninitialized value in show_cert I/O handler
2022-07-27BUG/MINOR: ssl_ckch: Dump cert transaction only once if show command yield
2022-07-27BUG/MEDIUM: ssl/crt-list: Rework 'add ssl crt-list' to handle full buffer cases
2022-07-27BUG/MEDIUM: ssl_ckch: Rework 'commit ssl cert' to handle full buffer cases
2022-07-27BUG/MINOR: ssl_ckch: Don't duplicate path when replacing a cert entry
2022-07-27BUG/MEDIUM: ssl_ckch: Don't delete a cert entry if it is being modified
2022-07-27BUG/MINOR: ssl_ckch: Free error msg if commit changes on a cert entry fails
2022-06-23BUG/MEDIUM: dns: Keep the right count of active nameservers for a resolver
2022-06-13BUG/MINOR: conn_stream: do not confirm a connection from the frontend path
2022-06-07BUG/MINOR: ssl: Fix crash when no private key is found in pem
2022-06-07BUG/MEDIUM: sample: Fix adjusting size in word converter
2022-06-07BUG/MEDIUM: peers: prevent unitialized multiple listeners on peers section
2022-06-07BUG/MEDIUM: peers: fix segfault using multiple bind on peers sections
2022-06-07BUG/MEDIUM: resolvers: Don't defer resolutions release in deinit function
2022-06-07BUG/MEDIUM: http: Properly reject non-HTTP/1.x protocols
2022-06-07BUG/MINOR: peers: fix error reporting of "bind" lines
2022-06-07BUG/MINOR: cfgparse: abort earlier in case of allocation error
2022-06-07BUG/MINOR: check: Reinit the buffer wait list at the end of a check
2022-06-07BUG/MEDIUM: config: Reset outline buffer size on realloc error in readcfgfile()
2022-05-13BUG/MEDIUM: wdt: don't trigger the watchdog when p is unitialized
2022-05-13BUG/MINOR: server: Make SRV_STATE_LINE_MAXLEN value from 512 to 2kB (2000 bytes).
2022-05-13BUG/MINOR: map/cli: make sure patterns don't vanish under "show map"'s init
2022-05-13BUG/MINOR: map/cli: protect the backref list during "show map" errors
2022-05-13BUG/MEDIUM: cli: make "show cli sockets" really yield
2022-05-13BUG/MINOR: tcp/http: release the expr of set-{src,dst}[-port]
2022-05-13BUG/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/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-01BUG/MAJOR: sched: prevent rare concurrent wakeup of multi-threaded tasks
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/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/MINOR: mworker: does not erase the pidfile upon reload
2022-02-25BUG/MEDIUM: mworker: don't lose the stats socket on failed reload
2022-02-25BUG/MEDIUM: mcli: always realign wrapping buffers before parsing them
2022-02-25BUG/MEDIUM: mcli: do not try to parse empty buffers
2022-02-25BUG/MEDIUM: cli: Never wait for more data on client shutdown
2022-02-25BUG/MINOR: cli: avoid O(bufsize) parsing cost on pipelined commands
2022-02-25BUG/MEDIUM: htx: Adjust length to add DATA block in an empty HTX buffer
2022-01-12BUG/MEDIUM: mworker: don't use _getsocks in wait mode
2022-01-12BUG/MEDIUM: http-ana: Preserve response's FLT_END analyser on L7 retry
2022-01-12BUG/MINOR: cli: fix _getsocks with musl libc
2022-01-12BUG/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-24BUG/MEDIUM: resolvers: Detach query item on response error
2021-12-24BUG/MEDIUM: cli: Properly set stream analyzers to process one command at a time
2021-12-09CI: Fix DEBUG_STRICT definition for Coverity
2021-11-24BUG/MEDIUM: ssl: abort with the correct SSL error when SNI not found
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: backend TLS resumption with sni and TLSv1.3
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: mux-h1: Fix H1C_F_ST_SILENT_SHUT value
2021-11-23BUG/MINOR: sample: fix backend direction flags consecutive to last fix
2021-11-23BUG/MEDIUM: sample: Cumulate frontend and backend sample validity flags
2021-11-23BUG/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-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-04BUG/MINOR: filters: Set right FLT_END analyser depending on channel
2021-10-04BUG/MINOR: filters: Always set FLT_END analyser when CF_FLT_ANALYZE flag is set
2021-10-04BUG/MEDIUM: http-ana: Reset channels analysers when returning an error
2021-10-04BUG/MINOR: stream: Don't release a stream if FLT_END is still registered
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-04BUG/MINOR: http-ana: increment internal_errors counter on response error
2021-10-04BUG/MINOR: h1-htx: Fix a typo when request parser is reset
2021-10-04BUG/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

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