Am 02.06.2019 um 13:00 schrieb Willy Tarreau:
> Hi,
> HAProxy 2.0-dev5 was released on 2019/06/02. It added 92 new commits
> after version 2.0-dev4.
> This version addresses a small number of no-to-trivial issues met while
> working on fixing other bugs and during benchmarks.
> One such issue concerns the excess of wakeup/sleep in the H2 mux since
> 1.9, due to the fact that the connection's mux buffer is the same size
> as the streams' and that when forwarding large data, each stream is able
> to fill the buffer and leave no more room to other ones. There are ways
> to address this at the connection management level but this requires to
> enforce new internal rules that were not necessarily strict enough yet,
> and that would require to carefully recheck the code. This will be for
> 2.1. In the mean time, using a list of buffers (buffer ring) for the
> connection was way easier and significantly improved the performance,
> while taking advance on what was expected for 2.1 without taking much
> risk.
> We also noticed that some locks and some atomic operations in the scheduler
> were taking a significant amount of time by causing lines to bounce between
> all cores. While it's often irritating to see this, I'm reminding myself
> that two years ago we were crossing fingers hoping that very basic multi-
> threading would be completed in time for 1.8 and that now we've already
> reached the point where bouncing CPU cache lines are the factor affecting
> the scalability, so I must admit it's quite pleasant to revisit such parts
> which were once consdered very fast, because now they're the bottlenecks!
> Thus some locks were reviewed again and the ones which were really not
> used anymore were released. Others have been identified to be reworked
> in 2.1.
> Another indicator that we're getting closer to the release is that we're
> mostly facing bugs affecting stable releases as well. For example there
> was another bug in the LB code where it's possible to loop forever on a
> dead server, which also affects 1.9 and 1.8, the queue dispatching code
> was bogus since 1.9, and we discovered that "http-request reject" rules
> have never worked well...
> Aside this, some improvements to the HTX code were made to better deal
> with 1xx messages. Strictly speaking they were not required for this
> version but I predicted that we'd face difficult to fix issues if we were
> to postpone them for 2.1, and in practice we found corner cases which are
> better addressed since these changes.
> A user-visible change was made (I hate to do this but it has become a
> real pain and we'll have more trouble if we don't address it now). It's
> the presence of similarly-named servers in the config. I figured that 5
> years later, we continue to warn instead of reject this. Given all the
> dynamic stuff people are using, it creates a real havoc to still have to
> deal with this, so better reject this now than letting people down this
> breach for another 5 years.
> The HTX performance was further increased by allowing zero-copy to be
> performed when receiving an H2 message. This will be visible in H2 to
> H2 scenarios mostly. In addition, the H2 performance appeared to be
> horrible when configured with large buffers, due to a few remaining
> bytes available after each message causing some realigns. This was now
> fixed.
> The SOCKS4 upstream server code was merged. At the moment while SOCKS4
> happens to work for me, it fails for its author (Alec) and his fix really
> bothers me. While merging it we noticed that the current connection layer
> is still affected by a few very dirty corner cases that I really don't
> like. In short, the handshake code was never used to switch between
> reading and writing till now. It's not a big deal since this code is going
> to disappear soon, but when working on the replacement part, Olivier found
> other deeper issues that I really want to see addressed. Just for this,
> I'm expecting at least another -dev next week before a final release as we
> can't afford to have dirty hacks in this area in an LTS version or we risk
> to pay them the high price.
> I just found while testing this release that "tcp-request inspect-delay"
> doesn't work in HTTP+HTX mode (it does not wait). I don't know why yet,
> but 1.9 has the same issue.
> Overall most of the performance issues addressed in this version also
> affect 1.9 and sometimes even 1.8, so we could expect that a few of them
> will be backported later if they are of particular concern.
> Now for the next steps, I'd like to emit another dev version this week
> (Wednesday or Thursday depending how things go with the pending issues),
> with the hope that we can do 2.0-final the week after, before the 15th.
> Please find the usual URLs below :
>    Site index       :
>    Discourse        :
>    Slack channel    :
>    Issue tracker    :
>    Sources          :
>    Git repository   :
>    Git Web browsing :
>    Changelog        :
>    Cyril's HTML doc :

     Aleks Img TLS1.3 :

HA-Proxy version 2.0-dev5 2019/06/02 -
Build options :
  TARGET  = linux2628
  CPU     = generic
  CC      = gcc
  CFLAGS  = -O2 -g -fno-strict-aliasing -Wdeclaration-after-statement -fwrapv
-Wno-unused-label -Wno-sign-compare -Wno-unused-parameter
-Wno-old-style-declaration -Wno-ignored-qualifiers -Wno-clobbered
-Wno-missing-field-initializers -Wtype-limits


Default settings :
  bufsize = 16384, maxrewrite = 1024, maxpollevents = 200

Built with multi-threading support (MAX_THREADS=64, default=1).
Built with OpenSSL version : OpenSSL 1.1.1c  28 May 2019
Running on OpenSSL version : OpenSSL 1.1.1c  28 May 2019
OpenSSL library supports TLS extensions : yes
OpenSSL library supports SNI : yes
OpenSSL library supports : TLSv1.0 TLSv1.1 TLSv1.2 TLSv1.3
Built with Lua version : Lua 5.3.5
Built with network namespace support.
Built with transparent proxy support using: IP_TRANSPARENT IPV6_TRANSPARENT
Built with libslz for stateless compression.
Compression algorithms supported : identity("identity"), deflate("deflate"),
raw-deflate("deflate"), gzip("gzip")
Built with PCRE version : 8.32 2012-11-30
Running on PCRE version : 8.32 2012-11-30
PCRE library supports JIT : yes
Encrypted password support via crypt(3): yes
Built with the Prometheus exporter as a service

Available polling systems :
      epoll : pref=300,  test result OK
       poll : pref=200,  test result OK
     select : pref=150,  test result OK
Total: 3 (3 usable), will use epoll.

Available multiplexer protocols :
(protocols marked as <default> cannot be specified using 'proto' keyword)
              h2 : mode=HTX        side=FE|BE     mux=H2
              h2 : mode=HTTP       side=FE        mux=H2
       <default> : mode=HTX        side=FE|BE     mux=H1
       <default> : mode=TCP|HTTP   side=FE|BE     mux=PASS

Available services :

Available filters :
        [SPOE] spoe
        [COMP] compression
        [CACHE] cache
        [TRACE] trace

Is this test usefull in docker setup?

########################## Starting vtest ##########################
Testing with haproxy version: 2.0-dev5
#    top  TEST reg-tests/seamless-reload/abns_socket.vtc FAILED (2.239) exit=2
1 tests failed, 0 tests skipped, 39 tests passed

full log

/tmp/haregtests-2019-06-03_10-35-38.CQS54T/vtc.11804.3e1085e1/LOG:*    top   0.1
RESETTING after reg-tests/seamless-reload/abns_socket.vtc

/tmp/haregtests-2019-06-03_10-35-38.CQS54T/vtc.11804.3e1085e1/LOG:***  h1    2.1
debug|[ALERT] 153/103606 (12296) : Current worker #1 (12303) exited with code
143 (Terminated)
> Willy
> ---
> Complete changelog :


Reply via email to