Changes since version 2.1.12 : Amaury Denoyelle (2): BUG/MINOR: server: free srv.lb_nodes in free_server BUG/MEDIUM: config: fix cpu-map notation with both process and threads Baptiste Assmann (1): BUG/MAJOR: dns: disabled servers through SRV records never recover Christopher Faulet (24): BUG/MEDIUM: thread: Fix a deadlock if an isolated thread is marked as harmless DOC: Explicitly state only IPv4 are supported by forwardfor/originalto options MINOR: lua: Slightly improve function dumping the lua traceback BUG/MEDIUM: debug/lua: Use internal hlua function to dump the lua traceback BUG/MEDIUM: lua: Always init the lua stack before referencing the context BUG/MINOR: resolvers: Unlink DNS resolution to set RMAINT on SRV resolution MINOR: resolvers: Use a function to remove answers attached to a resolution MINOR: resolvers: Purge answer items when a SRV resolution triggers an error MINOR: resolvers: Add function to change the srv status based on SRV resolution MINOR: resolvers: Directly call srvrq_update_srv_state() when possible BUG/MEDIUM: resolvers: Don't release resolution from a requester callbacks BUG/MEDIUM: threads: Ignore current thread to end its harmless period BUG/MINOR: connection: Fix fc_http_major and bc_http_major for TCP connections BUG/MINOR: http-fetch: Make method smp safe if headers were already forwarded BUG/MINOR: http_htx: Remove BUG_ON() from http_get_stline() function BUG/MINOR: logs: Report the true number of retries if there was no connection BUG/MINOR: mux-h1: Release idle server H1 connection if data are received BUG/MAJOR: mux-h2: Properly detect too large frames when decoding headers BUG/MEDIUM: mux-h2: Fix dfl calculation when merging CONTINUATION frames BUG/MEDIUM: mux-h2: Properly handle shutdowns when received with data BUG/MINOR: htx: Preserve HTX flags when draining data from an HTX message BUG/MINOR: applet: Notify the other side if data were consumed by an applet MINOR: No longer rely on deprecated sample fetches for predefined ACLs BUG/MINOR: mux-fcgi: Don't send normalized uri to FCGI application Emeric Brun (11): BUG/MINOR: peers: remove useless table check if initial resync is finished BUG/MEDIUM: peers: re-work connection to new process during reload. BUG/MEDIUM: peers: re-work refcnt on table to protect against flush BUG/MEDIUM: peers: initialize resync timer to get an initial full resync BUG/MEDIUM: peers: register last acked value as origin receiving a resync req BUG/MEDIUM: peers: stop considering ack messages teaching a full resync BUG/MEDIUM: peers: reset starting point if peers appears longly disconnected BUG/MEDIUM: peers: reset commitupdate value in new conns BUG/MEDIUM: peers: re-work updates lookup during the sync on the fly BUG/MEDIUM: peers: reset tables stage flags stages on new conns MINOR: peers: add informative flags about resync process for debugging Eric Salama (1): MINOR/BUG: mworker/cli: do not use the unix_bind prefix for the master CLI socket Florian Apolloner (1): BUG/MINOR: stats: Apply proper styles in HTML status page. Jerome Magnin (1): BUG/MAJOR: dns: fix null pointer dereference in snr_update_srv_status Julien Pivotto (1): DOC: clarify that compression works for HTTP/2 Remi Tricot-Le Breton (1): DOC: ssl: Certificate hot update only works on fronted certificates Thayne McCombs (2): BUG/MINOR: tools: fix parsing "us" unit for timers BUG/MEDIUM: sample: Fix adjusting size in field converter William Dauchy (1): DOC: tune: explain the origin of block size for ssl.cachesize William Lallemand (2): BUG/MINOR: mworker/init: don't reset nb_oldpids in non-mworker cases BUG/MINOR: mworker: don't use oldpids[] anymore for reload Willy Tarreau (11): MINOR: time: also provide a global, monotonic global_now_ms timer BUG/MEDIUM: time: make sure to always initialize the global tick BUG/MEDIUM: freq_ctr/threads: use the global_now_ms variable MINOR: tools: make url2ipv4 return the exact number of bytes parsed BUG/MINOR: http_fetch: make hdr_ip() reject trailing characters BUG/MEDIUM: mux-h1: make h1_shutw_conn() idempotent BUG/MINOR: tcp: fix silent-drop workaround for IPv6 BUILD: tcp: use IPPROTO_IPV6 instead of SOL_IPV6 on FreeBSD/MacOS BUG/MINOR: http_fetch: make hdr_ip() resistant to empty fields MINOR: task: remove __tasklet_remove_from_tasklet_list() BUG/MEDIUM: task: close a possible data race condition on a tasklet's list link