HAProxy 2.0-dev7 was released on 2019/06/11. It added 34 new commits
after version 2.0-dev6.

We're getting pretty good! I really was hesitating about marking it
final already or not, but given that we've addressed a few last minute
non-trivial issues and that there are still enough code cleanups and doc
updates left to keep anyone busy, I thought I'd rather slightly postpone
the final release to focus on maximal stability and cleanliness than
perfect schedule.

In short, there was an issue with the H1 to H2 upgrade making the
performance irregular, another issue affecting the end of compression in
HTX, a case where H1 could erroneously report being connected on the
backend side before the end of the handshake (possibly the one causing
me some irregular performance in H2 to H1 tests), the unsafe thread
initialization issues, and a more delicate fix for HTX to address
situations where buffer defragmentation was sometimes abused resulting
in low performance.

>From now on I estimate that the code is the code we'll release, more or
less the fixes for any bug which will be reported in between. Let's
focus solely on tidying the remaining FIXMEs, the doc, and possibly
exporting a few more info to the CLI/stats to help with debugging
(e.g. a few H1/H2 counters are terribly missing).

I noticed that no regtest failed on Travis since commit 7b3a79f6 which
concluded the changes for the stacking of the connection layers that
begun after the start of the periodic failures which appeared between
dev3 and dev4 mainly. Thus I would not completely rule out the
possibility that some deeply burried bug in the old connection code was
responsible for a part of them. If this is the case, good riddance!

Let's set on anything between Friday and Tuesday for the final release,
the former if no more bugs are reported, the latter if some are fixed
late. Please, really, no more dev for 2.0, if you have anything to
submit which doesn't belong to the exceptions above, this will go into
-next (which I just rebased now) but I would appreciate it if you could
delay your submissions so that we stay focused on 2.0.

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.0/src/
   Git repository   : http://git.haproxy.org/git/haproxy.git/
   Git Web browsing : http://git.haproxy.org/?p=haproxy.git
   Changelog        : http://www.haproxy.org/download/2.0/src/CHANGELOG
   Cyril's HTML doc : http://cbonte.github.io/haproxy-dconv/

Complete changelog :
Christopher Faulet (5):
      BUG/MINOR: cache/htx: Fix the counting of data already sent by the cache 
      BUG/MEDIUM: compression/htx: Fix the adding of the last data block
      MINOR: flt_trace: Don't scrash the original offset during the random 
      MAJOR: htx: Rework how free rooms are tracked in an HTX message
      MINOR: htx: Add the function htx_move_blk_before()

Daniel Corbett (4):
      MINOR: contrib/spoa_server: Upgrade SPOP to 2.0
      BUG/MEDIUM: contrib/spoa_server: Set FIN flag on agent frames
      MINOR: contrib/spoa_server: Add random IP score
      DOC/MINOR: contrib/spoa_server: Fix typo in README

Frédéric Lécaille (6):
      MINOR peers: data structure simplifications for server names dictionary 
      DOC: peers: Update for dictionary cache entries for peers protocol.
      MINOR: dict: Store the length of the dictionary entries.
      MINOR: peers: A bit of optimization when encoding cached server names.
      MINOR: peers: Optimization for dictionary cache lookup.
      BUG/MINOR: dict: race condition fix when inserting dictionary entries.

Olivier Houchard (6):
      MINOR: chunks: Make sure trash_size is only set once.
      BUG/MEDIUM: H1: When upgrading, make sure we don't free the buffer too 
      BUG/MEDIUM: stream_interface: Make sure we call si_cs_process() if 
      Revert "BUG/MEDIUM: H1: When upgrading, make sure we don't free the 
buffer too early."
      BUG/MEDIUM: h1: Don't try to subscribe if we had a connection error.
      BUG/MEDIUM: h1: Don't consider we're connected if the handshake isn't 

Willy Tarreau (13):
      BUG/MEDIUM: mux-h2: make sure the connection timeout is always set
      MINOR: tools: add new bitmap manipulation functions
      MINOR: logs: use the new bitmap functions instead of fd_sets for encoding 
      Revert "MINOR: chunks: Make sure trash_size is only set once."
      MINOR: threads: serialize threads initialization
      MEDIUM: tools: improve time format error detection
      MINOR: threads: avoid clearing harmless twice in thread_release()
      MEDIUM: threads: add thread_sync_release() to synchronize steps
      BUG/MEDIUM: init/threads: prevent initialized threads from starting 
before others
      OPTIM/MINOR: init/threads: only call protocol_enable_all() on first thread
      MEDIUM: init/threads: don't use spinlocks during the init phase
      BUG/MINOR: http-rules: mention "deny_status" for "deny" in the error 
      MINOR: http: turn default error files to HTTP/1.1


Reply via email to