HAProxy known bugs for version v2.1.9 (maintenance branch 2.1) :  175 

This version (2.1.9) is a release belonging to maintenance branch 2.1 whose latest version is 2.1.12. 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
2021-03-182.1.12 ⇐ last
2021-01-082.1.11 
2020-11-052.1.10 
2020-09-302.1.9 ⇐ yours
2020-07-312.1.8 
2020-06-092.1.7 
2020-06-082.1.6 
2020-05-292.1.5 
2020-04-022.1.4 
2020-02-122.1.3 
2019-12-212.1.2 
2019-12-112.1.1 
2019-11-252.1.0 

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

These fixes have already been queued for a more recent 2.1 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
175 0 8 63 104

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

Merge dateSubject - Severity (minor, medium, major, critical)
2021-04-29BUG/MINOR: mux-fcgi: Don't send normalized uri to FCGI application
2021-04-29BUG/MEDIUM: peers: reset tables stage flags stages on new conns
2021-04-29BUG/MEDIUM: peers: re-work updates lookup during the sync on the fly
2021-04-29BUG/MEDIUM: peers: reset commitupdate value in new conns
2021-04-29BUG/MEDIUM: peers: reset starting point if peers appears longly disconnected
2021-04-29BUG/MEDIUM: peers: stop considering ack messages teaching a full resync
2021-04-29BUG/MEDIUM: peers: register last acked value as origin receiving a resync req
2021-04-29BUG/MEDIUM: peers: initialize resync timer to get an initial full resync
2021-04-29BUG/MINOR: applet: Notify the other side if data were consumed by an applet
2021-04-29BUG/MINOR: htx: Preserve HTX flags when draining data from an HTX message
2021-04-29BUG/MEDIUM: peers: re-work refcnt on table to protect against flush
2021-04-29BUG/MEDIUM: peers: re-work connection to new process during reload.
2021-04-29BUG/MINOR: peers: remove useless table check if initial resync is finished
2021-04-29BUG/MEDIUM: mux-h2: Properly handle shutdowns when received with data
2021-04-29BUG/MINOR: mworker: don't use oldpids[] anymore for reload
2021-04-29BUG/MINOR: mworker/init: don't reset nb_oldpids in non-mworker cases
2021-04-29BUG/MEDIUM: config: fix cpu-map notation with both process and threads
2021-04-29BUG/MEDIUM: mux-h2: Fix dfl calculation when merging CONTINUATION frames
2021-04-29BUG/MAJOR: mux-h2: Properly detect too large frames when decoding headers
2021-04-29BUG/MINOR: server: free srv.lb_nodes in free_server
2021-04-29BUG/MINOR: mux-h1: Release idle server H1 connection if data are received
2021-04-29BUG/MINOR: logs: Report the true number of retries if there was no connection
2021-04-29BUG/MINOR: http_htx: Remove BUG_ON() from http_get_stline() function
2021-04-29BUG/MINOR: http-fetch: Make method smp safe if headers were already forwarded
2021-04-29BUG/MINOR: connection: Fix fc_http_major and bc_http_major for TCP connections
2021-04-29BUG/MEDIUM: threads: Ignore current thread to end its harmless period
2021-04-29BUG/MEDIUM: sample: Fix adjusting size in field converter
2021-04-29BUG/MINOR: tools: fix parsing "us" unit for timers
2021-04-29MINOR/BUG: mworker/cli: do not use the unix_bind prefix for the master CLI socket
2021-04-14BUG/MEDIUM: task: close a possible data race condition on a tasklet's list link
2021-04-09BUG/MEDIUM: resolvers: Don't release resolution from a requester callbacks
2021-04-09BUG/MINOR: resolvers: Unlink DNS resolution to set RMAINT on SRV resolution
2021-04-09BUG/MAJOR: dns: disabled servers through SRV records never recover
2021-04-09BUG/MAJOR: dns: fix null pointer dereference in snr_update_srv_status
2021-04-09BUG/MINOR: stats: Apply proper styles in HTML status page.
2021-04-09BUG/MEDIUM: lua: Always init the lua stack before referencing the context
2021-04-09BUG/MEDIUM: debug/lua: Use internal hlua function to dump the lua traceback
2021-03-31BUG/MINOR: http_fetch: make hdr_ip() resistant to empty fields
2021-03-31BUG/MINOR: tcp: fix silent-drop workaround for IPv6
2021-03-31BUG/MEDIUM: mux-h1: make h1_shutw_conn() idempotent
2021-03-31BUG/MINOR: http_fetch: make hdr_ip() reject trailing characters
2021-03-31BUG/MEDIUM: thread: Fix a deadlock if an isolated thread is marked as harmless
2021-03-31BUG/MEDIUM: freq_ctr/threads: use the global_now_ms variable
2021-03-31BUG/MEDIUM: time: make sure to always initialize the global tick
2021-03-18BUG/MINOR: freq_ctr/threads: make use of the last updated global time
2021-03-18BUG/MINOR: resolvers: Add missing case-insensitive comparisons of DNS hostnames
2021-03-18BUG/MINOR: resolvers: Reset server address on DNS error only on status change
2021-03-18BUG/MINOR: resolvers: Consider server to have no IP on DNS resolution error
2021-03-12BUG/MINOR: session: Add some forgotten tests on session's listener
2021-03-12BUG/MINOR: proxy/session: Be sure to have a listener to increment its counters
2021-03-12BUG/MEDIUM: filters: Set CF_FL_ANALYZE on channels when filters are attached
2021-03-12BUG/MEDIUM: session: NULL dereference possible when accessing the listener
2021-03-12BUG/MINOR: ssl: don't truncate the file descriptor to 16 bits in debug mode
2021-03-12BUG/MINOR: hlua: Don't strip last non-LWS char in hlua_pushstrippedstring()
2021-03-05BUG/MEDIUM: lists: Avoid an infinite loop in MT_LIST_TRY_ADDQ().
2021-03-05BUG/MEDIUM: lists: Lock the element while we check if it is in a list.
2021-03-03BUG/MEDIUM: dns: Consider the fact that dns answers are case-insensitive
2021-03-03BUG/MINOR: http-ana: Don't increment HTTP error counter on read error/timeout
2021-03-03BUG/MINOR: mux-h2: Fix typo in scheme adjustment
2021-03-01BUG/MEDIUM: spoe: Kill applets if there are pending connections and nbthread > 1
2021-03-01BUG/MINOR: connection: Use the client's dst family for adressless servers
2021-03-01BUG/MINOR: tcp-act: Don't forget to set the original port for IPv4 set-dst rule
2021-03-01BUG/MINOR: http-ana: Only consider dst address to process originalto option
2021-03-01BUG/MINOR: mux-h1: Immediately report H1C errors from h1_snd_buf()
2021-02-26BUG/MEDIUM: resolvers: Reset address for unresolved servers
2021-02-26BUG/MEDIUM: resolvers: Reset server address and port for obselete SRV records
2021-02-26BUG/MINOR: resolvers: new callback to properly handle SRV record errors
2021-02-26BUG/MINOR: proxy: wake up all threads when sending the hard-stop signal
2021-02-26BUG/MEDIUM: cli/shutdown sessions: make it thread-safe
2021-02-26BUG/MEDIUM: proxy: use thread-safe stream killing on hard-stop
2021-02-26BUG/MEDIUM: vars: make functions vars_get_by_{name,desc} thread-safe
2021-02-26BUG/MINOR: sample: secure convs that accept base64 string and var name as args
2021-02-26BUG/MINOR: ssl/cli: potential null pointer dereference in "set ssl cert"
2021-02-26BUG/MEDIUM: mux-h1: Fix handling of responses to CONNECT other than 200-ok
2021-02-26BUG/MINOR: server: Be sure to cut the last parsed field of a server-state line
2021-02-26BUG/MINOR: server: Init params before parsing a new server-state line
2021-02-26BUG/MINOR: sample: Always consider zero size string samples as unsafe
2021-02-26BUG/MINOR: checks: properly handle wrapping time in __health_adjust()
2021-02-26BUG/MINOR: session: atomically increment the tracked sessions counter
2021-02-26BUG/MINOR: server: Remove RMAINT from admin state when loading server state
2021-02-26BUG/MINOR: server: Don't call fopen() with server-state filepath set to NULL
2021-02-26BUG/MINOR: cfgparse: do not mention "addr:port" as supported on proxy lines
2021-02-26BUG/MINOR: stats: revert the change on ST_CONVDONE
2021-02-26BUG/MEDIUM: config: don't pick unset values from last defaults section
2021-02-26BUG/MINOR: server: Fix server-state-file-name directive
2021-02-26BUG/MINOR: backend: hold correctly lock when killing idle conn
2021-02-26BUG/MINOR: tools: Fix a memory leak on error path in parse_dotted_uints()
2021-02-26BUG/MINOR: server: re-align state file fields number
2021-02-26BUG/MEDIUM: mux-h1: Always set CS_FL_EOI for response in MSG_DONE state
2021-02-26BUG/MINOR: http-ana: Don't increment HTTP error counter on internal errors
2021-02-05BUG/MEDIUM: mux-h2: do not quit the demux loop before setting END_REACHED
2021-02-05BUG/MEDIUM: mux-h2: handle remaining read0 cases
2021-02-05BUG/MEDIUM: ssl/cli: abort ssl cert is freeing the old store
2021-02-05BUG/MINOR: ssl: init tmp chunk correctly in ssl_sock_load_sctl_from_file()
2021-02-05BUG/MINOR: xxhash: make sure armv6 uses memcpy()
2021-02-05BUG/MEDIUM: ssl: check a connection's status before computing a handshake
2021-02-05BUG/MINOR: stick-table: Always call smp_fetch_src() with a valid arg list
2021-02-05BUG/MINOR: config: fix leak on proxy.conn_src.bind_hdr_name
2021-02-01BUG/MEDIUM: filters/htx: Fix data forwarding when payload length is unknown
2021-01-28BUG/MEDIUM: stats: add missing INF_BUILD_INFO definition
2021-01-26BUG/MEDIUM: mux-h2: fix read0 handling on partial frames
2021-01-26BUG/MINOR: mworker: define _GNU_SOURCE for strsignal()
2021-01-26BUG/MINOR: mux_h2: missing space between "st" and ".flg" in the "show fd" helper
2021-01-26BUG/MINOR: peers: Wrong "new_conn" value for "show peers" CLI command.
2021-01-26BUG/MINOR: threads: Fixes the number of possible cpus report for Mac.
2021-01-26BUG/MINOR: init: Use a dynamic buffer to set HAPROXY_CFGFILES env variable
2021-01-26BUG/MINOR: init: enforce strict-limits when using master-worker
2021-01-26BUG/MINOR: sample: Memory leak of sample_expr structure in case of error
2021-01-26BUG/MINOR: sample: check alloc_trash_chunk return value in concat()
2021-01-08BUG/MINOR: sample: fix concat() converter's corruption with non-string variables
2021-01-08BUG/MINOR: srv: do not init address if backend is disabled
2021-01-08BUG/MINOR: cfgparse: Fail if the strdup() for `rule->be.name` for `use_backend` fails
2021-01-08BUG/MEDIUM: mux_h2: Add missing braces in h2_snd_buf()around trace+wakeup
2021-01-08BUG/MEDIUM: http-ana: Never for sending data in TUNNEL mode
2021-01-08BUG/MINOR: mux-h1: Don't set CS_FL_EOI too early for protocol upgrade requests
2020-12-14BUG/MEDIUM: lb-leastconn: Reposition a server using the right eweight
2020-12-14BUG/MINOR: tools: Reject size format not starting by a digit
2020-12-14BUG/MINOR: tools: make parse_time_err() more strict on the timer validity
2020-12-14BUG/MEDIUM: spoa/python: Fixing references to None
2020-12-14BUG/MEDIUM: spoa/python: Fixing PyObject_Call positional arguments
2020-12-14BUG/MINOR: spoa/python: Cleanup ipaddress objects if initialization fails
2020-12-14BUG/MINOR: spoa/python: Cleanup references for failed Module Addobject operations
2020-12-14BUG/MAJOR: spoa/python: Fixing return None
2020-12-14BUG/MINOR: lua: warn when registering action, conv, sf, cli or applet multiple times
2020-12-14BUG/MINOR: lua: Some lua init operation are processed unsafe
2020-12-14BUG/MINOR: lua: Post init register function are not executed beyond the first one
2020-12-14BUG/MINOR: lua: lua-load doesn't check its parameters
2020-12-14BUG/MINOR: lua: missing "\n" in error message
2020-12-14BUG/MAJOR: peers: fix partial message decoding
2020-11-24BUG/MAJOR: filters: Always keep all offsets up to date during data filtering
2020-11-18BUG/MINOR: http-ana: Don't wait for the body of CONNECT requests
2020-11-18BUG/MEDIUM: filters: Forward all filtered data at the end of http filtering
2020-11-13BUG/MAJOR: spoe: Be sure to remove all references on a released spoe applet
2020-11-13BUG/MINOR: http-fetch: Fix calls w/o parentheses of the cookie sample fetches
2020-11-13BUG/MINOR: http-fetch: Extract cookie value even when no cookie name
2020-11-13BUG/MEDIUM: peers: fix decoding of multi-byte length in stick-table messages
2020-11-13BUG/MINOR: peers: Missing TX cache entries reset.
2020-11-13BUG/MINOR: peers: Do not ignore a protocol error for dictionary entries.
2020-11-13BUG/MINOR: lua: set buffer size during map lookups
2020-11-13BUG/MINOR: pattern: a sample marked as const could be written
2020-11-06BUG/MINOR: http-htx: Just warn if payload of an errorfile doesn't match the C-L
2020-11-03BUG/MEDIUM: stick-table: limit the time spent purging old entries
2020-11-03BUG/MINOR: filters: Skip disabled proxies during startup only
2020-11-03BUG/MEDIUM: mux-pt: Release the tasklet during an HTTP upgrade
2020-11-03BUG/MINOR: server: Set server without addr but with dns in RMAINT on startup
2020-11-03BUG/MINOR: proxy/server: Skip per-proxy/server post-check for disabled proxies
2020-11-03BUG/MEDIUM: filters: Don't try to init filters for disabled proxies
2020-11-03BUG/MINOR: cache: Inverted variables in http_calc_maxage function
2020-11-03BUG/MINOR: cache: Manage multiple values in cache-control header value
2020-11-03BUG/MINOR: lua: initialize sample before using it
2020-11-03BUG/MINOR: server: fix down_time report for stats
2020-11-03BUG/MINOR: server: fix srv downtime calcul on starting
2020-11-03BUG/MINOR: log: fix memory leak on logsrv parse error
2020-11-03BUG/MINOR: extcheck: add missing checks on extchk_setenv()
2020-11-03BUG/MAJOR: mux-h2: Don't try to send data if we know it is no longer possible
2020-11-03BUG/MINOR: http-ana: Don't send payload for internal responses to HEAD requests
2020-11-03BUG/MEDIUM: server: support changing the slowstart value from state-file
2020-11-03BUG/MINOR: queue: properly report redistributed connections
2020-10-27BUG/MEDIUM: ssl: OCSP must work with BoringSSL
2020-10-22BUG/MINOR: disable dynamic OCSP load with BoringSSL
2020-10-19BUG/MINOR: peers: Possible unexpected peer seesion reset after collisions.
2020-10-19BUG/MEDIUM: lb: Always lock the server when calling server_{take,drop}_conn
2020-10-19BUG/MEDIUM: mux-h1: Get the session from the H1S when capturing bad messages
2020-10-19BUG/MEDIUM: spoe: Unset variable instead of set it if no data provided
2020-10-19BUG/MEDIUM: task: bound the number of tasks picked from the wait queue at once
2020-10-19BUG/MINOR: mux-h2: do not stop outgoing connections on stopping
2020-10-19BUG/MINOR: init: only keep rlim_fd_cur if max is unlimited
2020-10-09BUG/MINOR: http-htx: Expect no body for 204/304 internal HTTP responses
2020-10-09BUG/MEDIUM: mux-h2: Don't handle pending read0 too early on streams
2020-10-09BUG/MEDIUM: mux-fcgi: Don't handle pending read0 too early on streams
2020-10-08BUG/MINOR: mux-h1: Always set the session on frontend h1 stream
2020-10-08BUG/MINOR: peers: Inconsistency when dumping peer status codes.
2020-10-08BUG/MINOR: stats: fix validity of the json schema
2020-10-08BUG/MEDIUM: queue: make pendconn_cond_unlink() really thread-safe
2020-10-08BUG/MINOR: Fix several leaks of 'log_tag' in init().
2020-09-30BUG/MEDIUM: ssl: crt-list negative filters don't work

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