Hi, HAProxy 1.9.6 was released on 2019/03/29. It added 34 new commits after version 1.9.5.
As mentioned in the 2.0-dev2 release, we've addressed quite a number of issues recently and these fixes have now been backported into this release. Two issues affect checks and may occasionally cause crashes, one fixed by Olivier and the latest one by Ricardo Nabinger Sanchez. Christopher fixed two long standing problems, one affecting the way POST requests are processed by applets, which can sometimes leave data pending there unread forever, and another one related to the confusion created in 1.8's early H2 between an end of message and end of stream resulting in spurious aborts when option abortonclose is set. Olivier addressed a number of H2 stability issues, some related to connection error handling, other ones related to a lack of fairness between streams caused by the different stream processing flow in 1.9 vs 1.8 which can result in some streams facing a huge latency. Pierre Cheynier fixed the TLS 1.3 cipher suites, and William fixed a risk of crash in the master-worker code in the unlikely case where one of the embedded libraries would perform a fork() causing a waitpid() to succeed with an unregistered process. Radek Zajic fixed the IPv6 address hex format used in logs which seems to have been broken for a very long time, and Fred re-enabled the reg test we regularly disable when vtest breaks :-) And this is one of the first release in which I did almost nothing, which is awesome (it proves I'm no longer the bottleneck blocking the project's ability to scale), so keep up the good work guys! 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/1.9/src/ Git repository : http://git.haproxy.org/git/haproxy-1.9.git/ Git Web browsing : http://git.haproxy.org/?p=haproxy-1.9.git Changelog : http://www.haproxy.org/download/1.9/src/CHANGELOG Cyril's HTML doc : http://cbonte.github.io/haproxy-dconv/ Willy --- Complete changelog : Christopher Faulet (12): BUG/MINOR: cache: Fully consume large requests in the cache applet BUG/MINOR: stats: Fully consume large requests in the stats applet BUG/MEDIUM: lua: Fully consume large requests when an HTTP applet ends BUG/MINOR: proto-http: Don't forward request body anymore on error MINOR: mux-h2: Remove useless test on ES flag in h2_frt_transfer_data() MINOR: connection: and new flag to mark end of input (EOI) MINOR: channel: Report EOI on the input channel if it was reached in the mux MEDIUM: mux-h2: Don't mix the end of the message with the end of stream MINOR: mux-h1: Set CS_FL_EOI the end of the message is reached BUG/MEDIUM: http/htx: Fix handling of the option abortonclose CLEANUP: muxes/stream-int: Remove flags CS_FL_READ_NULL and SI_FL_READ_NULL BUG/MINOR: mux-h1: Only skip invalid C-L headers on output Freddy Spierenburg (1): DOC: The option httplog is no longer valid in a backend. Frédéric Lécaille (1): REGTEST: Enable again reg tests with HEAD HTTP method usage. Olivier Houchard (10): BUG/MEDIUM: mux-h2: Make sure we destroyed the h2s once shutr/shutw is done. BUG/MEDIUM: mux-h2: Don't bother keeping the h2s if detaching and nothing to send. BUG/MEDIUM: mux-h2: Use the right list in h2_stop_senders(). BUG/MINOR: doc: Be accurate on the behavior on pool-purge-delay. BUG/MEDIUM: h2: Try to be fair when sending data. BUG/MEDIUM: h2: only destroy the h2s if h2s->cs is NULL. BUG/MEDIUM: h2: Use the new sending_list in h2s_notify_send(). BUG/MEDIUM: h2: Follow the same logic in h2_deferred_shut than in h2_snd_buf. BUG/MEDIUM: h2: Remove the tasklet from the task list if unsubscribing. BUG/MEDIUM: checks: Don't bother subscribing if we have a connection error. Pierre Cheynier (1): BUG/MEDIUM: ssl: ability to set TLS 1.3 ciphers using ssl-default-server-ciphersuites Radek Zajic (1): BUG/MINOR: log: properly format IPv6 address when LOG_OPT_HEXA modifier is used. Ricardo Nabinger Sanchez (1): BUG/MAJOR: checks: segfault during tcpcheck_main William Lallemand (1): BUG/MEDIUM: mworker: don't free the wrong child when not found Willy Tarreau (6): MINOR: mux-h2: copy small data blocks more often and reduce the number of pauses MINOR: lists: add a LIST_DEL_INIT() macro CONTRIB: debug: report the CS and CF's EOI flags BUG/MEDIUM: mux-h2: make sure to always notify streams of EOS condition BUG/MEDIUM: task/h2: add an idempotent task removal fucntion REGTEST: remove unexpected "nbthread" statement from Lua test cases ---

