Hi,

HAProxy 2.3-dev1 was released on 2020/07/17. It added 60 new commits
after version 2.3-dev0.

A few bugs were addressed, as usual, not as scary as they may look like,
to be honest, since it seems unlikely most people will meet them. One of
them may cause a crash that Tim recently met, but we're unsure about the
conditions needed to trigger it, so let's not rush a 2.2 release yet!

For the main visible changes, I can cite:
  - new configurable TCP keep-alive interval/probes/count (MIZUTA Takeshi)

  - more deinit cleanups to make valgrind happier (Tim Düsterhus)

  - "strict-limits" now defaults to "on" so that you'll now get a startup
    error if you configure too large a maxconn for your system's limits
    instead of experiencing the error once at full load (William Dauchy)

  - syslog load balancing (Emeric Brun) : there is now a new "log-forward"
    section which listens to UDP syslog and rebalances it to other log
    servers, possibly performing a format translation on the fly. This
    can both duplicate and load-balance (thanks to the sampling feature),
    allowing to, for example, forward over TCP and stderr what's received
    over UDP. Please have a look at the example in the doc, it's self 
    explanatory. This opens the door to future improvements such as
    receiving over TCP as well, and/or routing on certain fields and/or
    masking/rewriting certain fields (e.g. user names, passwords or credit
    card numbers).

And the rest is mostly internal stuff.

We'll try to emit more frequent -dev releases from now on, typically
every 2 weeks, as the end of the 2.2 cycle showed that it improves accuracy
in bug reports, brings less risks to users, and shortens the time needed to
write the announcement :-)

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.3/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.3/src/CHANGELOG
   Cyril's HTML doc : http://cbonte.github.io/haproxy-dconv/

Willy
---
Complete changelog :
Christopher Faulet (20):
      BUG/MEDIUM: mux-h2: Don't add private connections in available connection 
list
      BUG/MEDIUM: mux-fcgi: Don't add private connections in available 
connection list
      MINOR: connection: Set the SNI on server connections before installing 
the mux
      MINOR: connection: Set new connection as private on reuse never
      MINOR: connection: Add a wrapper to mark a connection as private
      MEDIUM: connection: Add private connections synchronously in session 
server list
      MINOR: connection: Use a dedicated function to look for a session's 
connection
      MINOR: connection: Set the conncetion target during its initialisation
      MINOR: session: Take care to decrement idle_conns counter in 
session_unown_conn
      MINOR: server: Factorize code to deal with reuse of server idle 
connections
      MINOR: server: Factorize code to deal with connections removed from an 
idle list
      CLEANUP: connection: remove unused field idle_time from the connection 
struct
      BUG/MEDIUM: mux-h1: Continue to process request when switching in tunnel 
mode
      MINOR: raw_sock: Report the number of bytes emitted using the splicing
      MINOR: contrib/prometheus-exporter: Add missing global and per-server 
metrics
      MINOR: backend: Add sample fetches to get the server's weight
      BUG/MINOR: mux-fcgi: Handle empty STDERR record
      BUG/MINOR: mux-fcgi: Set conn state to RECORD_P when skipping the record 
padding
      BUG/MINOR: mux-fcgi: Set flags on the right stream field for empty 
FCGI_STDOUT
      BUG/MEDIUM: channel: Be aware of SHUTW_NOW flag when output data are 
peeked

Emeric Brun (6):
      BUG/MEDIUM: log: issue mixing sampled to not sampled log servers.
      MEDIUM: udp: adds minimal proto udp support for message listeners.
      MEDIUM: log/sink: re-work and merge of build message API.
      MINOR: log: adds syslog udp message handler and parsing.
      MEDIUM: log: adds log forwarding section.
      MINOR: log: adds counters on received syslog messages.

Harris Kaufmann (1):
      BUG/MEDIUM: fcgi-app: fix memory leak in fcgi_flt_http_headers

Ilya Shipitsin (2):
      CI: travis-ci: speed up osx build by running brew scripted, switch to 
latest osx image
      BUG/MEDIUM: server: resolve state file handle leak on reload

MIZUTA Takeshi (1):
      MINOR: tcp: Support TCP keepalive parameters customization

Pierre Cheynier (1):
      CLEANUP: contrib/prometheus-exporter: typo fixes for ssl reuse metric

Tim Duesterhus (15):
      BUG/MINOR: acl: Fix freeing of expr->smp in prune_acl_expr
      BUG/MINOR: sample: Fix freeing of conv_exprs in release_sample_expr
      BUG/MINOR: haproxy: Free proxy->format_unique_id during deinit
      BUG/MINOR: haproxy: Add missing free of server->(hostname|resolvers_id)
      BUG/MINOR: haproxy: Free proxy->unique_id_header during deinit
      BUG/MINOR: haproxy: Free srule->file during deinit
      BUG/MINOR: haproxy: Free srule->expr during deinit
      BUG/MINOR: sample: Free str.area in smp_check_const_bool
      BUG/MINOR: sample: Free str.area in smp_check_const_meth
      CLEANUP: haproxy: Free proxy_deinit_list in deinit()
      CLEANUP: haproxy: Free post_deinit_list in deinit()
      CLEANUP: haproxy: Free server_deinit_list in deinit()
      CLEANUP: haproxy: Free post_server_check_list in deinit()
      CLEANUP: Add static void vars_deinit()
      CLEANUP: Add static void hlua_deinit()

William Dauchy (1):
      MINOR: config: make strict limits enabled by default

Willy Tarreau (13):
      BUG/MEDIUM: lists: add missing store barrier on MT_LIST_BEHEAD()
      BUG/MEDIUM: lists: add missing store barrier in MT_LIST_ADD/MT_LIST_ADDQ
      BUILD: tcp: condition TCP keepalive settings to platforms providing them
      MINOR: lists: rename some MT_LIST operations to clarify them
      MINOR: buffer: use MT_LIST_ADDQ() for buffer_wait lists additions
      MINOR: connection: use MT_LIST_ADDQ() to add connections to idle lists
      MINOR: tasks: use MT_LIST_ADDQ() when killing tasks.
      CONTRIB: da: fix memory leak in dummy function da_atlas_open()
      BUG/MINOR: backend: fix potential null deref on srv_conn
      BUG/MEDIUM: server: fix possibly uninitialized state file on close
      BUILD: config: address build warning on raspbian+rpi4
      BUG/MAJOR: tasks: make sure to always lock the shared wait queue if needed
      BUILD: config: fix again bugs gcc warnings on calloc

---

Reply via email to