Hi,

HAProxy 2.1.1 was released on 2019/12/11. It added 43 new commits
after version 2.1.0.

Overall I must say I'm particularly happy about the positive effect of the
long stabilization period prior to the final release. It's been slightly
more than two weeks since 2.1.0 and we didn't have a single regression yet,
all bugs fixed were already present in earlier releases. As a result there
is nothing dramatic, mostly some annoyances, so it's the right moment to
flush the pipe and provide a cleaner version to all those who had not yet
started to upgrade. Only one bug was tagged MAJOR, it's about the DNS. It's
been there for a while, is unlikely to strike but when it strikes it
requires a restart of the process and there is no workaround, which is why
it's tagged as such.

For the rest, thanks to a lot of quite detailed reports, we could address a
long tail of bugs causing threads or processes to spin like crazy. Some of
them were caused by a race condition in the listener code when using threads,
some by the DNS, others by health checks. Another issue can occasionally
cause server timeouts to be logged when using splicing. Overall nothing
alarming. I suggest every user to upgrade to avoid falling into such traps,
though there's no really no need to hurry.

Please find the usual URLs below :
   Site index       : http://www.haproxy.org/
   Discourse        : http://discourse.haproxy.org/
   Slack channel    : https://slack.haproxy.org/
   Issue tracker    : https://github.com/haproxy/haproxy/issues
   Sources          : http://www.haproxy.org/download/2.1/src/
   Git repository   : http://git.haproxy.org/git/haproxy-2.1.git/
   Git Web browsing : http://git.haproxy.org/?p=haproxy-2.1.git
   Changelog        : http://www.haproxy.org/download/2.1/src/CHANGELOG
   Cyril's HTML doc : http://cbonte.github.io/haproxy-dconv/

Willy
---
Complete changelog :
Christopher Faulet (9):
      BUG/MINOR: h1: Don't test the host header during response parsing
      BUG/MINOR: http-htx: Don't make http_find_header() fail if the value is 
empty
      BUG/MINOR: fcgi-app: Make the directive pass-header case insensitive
      BUG/MINOR: stats: Fix HTML output for the frontends heading
      BUG/MEDIUM: mux-h1: Never reuse H1 connection if a shutw is pending
      BUG/MINOR: mux-h1: Don't rely on CO_FL_SOCK_RD_SH to set H1C_F_CS_SHUTDOWN
      BUG/MINOR: mux-h1: Fix conditions to know whether or not we may receive 
data
      BUG/MINOR: mux-h1: Be sure to set CS_FL_WANT_ROOM when EOM can't be added
      BUG/MEDIUM: mux-fcgi: Handle cases where the HTX EOM block cannot be 
inserted

Emmanuel Hocdet (2):
      BUG/MINOR: ssl: fix SSL_CTX_set1_chain compatibility for openssl < 1.0.2
      BUG/MINOR: ssl: certificate choice can be unexpected with openssl >= 1.1.1

Julien Pivotto (2):
      DOC: Fix ordered list in summary
      DOC: proxies: HAProxy only supports 3 connection modes

Mathias Weiersmueller (1):
      DOC: clarify matching strings on binary fetches

Olivier Houchard (3):
      BUG/MEDIUM: tasks: Make sure we switch wait queues in task_set_affinity().
      BUG/MEDIUM: checks: Make sure we set the task affinity just before 
connecting.
      BUG/MEDIUM: kqueue: Make sure we report read events even when no data.

Tim Duesterhus (1):
      DOC: Clarify behavior of server maxconn in HTTP mode

William Dauchy (1):
      BUG/MINOR: contrib/prometheus-exporter: decode parameter and value only

William Lallemand (3):
      DOC: ssl/cli: set/commit/abort ssl cert
      BUG/MINOR: ssl/cli: 'ssl cert' cmd only usable w/ admin rights
      BUG/MINOR: ssl/cli: don't overwrite the filters variable

Willy Tarreau (21):
      BUILD/MINOR: trace: fix use of long type in a few printf format strings
      DOC: move the "group" keyword at the right place
      BUG/MEDIUM: stream-int: don't subscribed for recv when we're trying to 
flush data
      BUG/MINOR: stream-int: avoid calling rcv_buf() when splicing is still 
possible
      BUG/MEDIUM: listener/thread: fix a race when pausing a listener
      BUG/MINOR: proxy: make soft_stop() also close FDs in LI_PAUSED state
      BUG/MINOR: listener/threads: always use atomic ops to clear the FD events
      BUG/MINOR: listener: also clear the error flag on a paused listener
      BUG/MEDIUM: listener/threads: fix a remaining race in the listener's 
accept()
      DOC: document the listener state transitions
      BUG/MAJOR: dns: add minimalist error processing on the Rx path
      BUG/MEDIUM: proto_udp/threads: recv() and send() must not be exclusive.
      DOC: listeners: add a few missing transitions
      BUG/MINOR: tasks: only requeue a task if it was already in the queue
      DOC: remove references to the outdated architecture.txt
      BUG/MINOR: log: fix minor resource leaks on logformat error path
      BUG/MINOR: mworker: properly pass SIGTTOU/SIGTTIN to workers
      BUG/MINOR: listener: do not immediately resume on transient error
      BUG/MINOR: server: make "agent-addr" work on default-server line
      BUG/MINOR: listener: fix off-by-one in state name check
      BUILD/MINOR: unix sockets: silence an absurd gcc warning about strncpy()

---

Reply via email to