From: William Lallemand Date: Tue, 21 Jun 2022 09:11:50 +0000 (+0200) Subject: BUG/MEDIUM: mworker: use default maxconn in wait mode X-Git-Tag: v2.7-dev1~17 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0a012aa16b77af4039988e80e7343ec2eec267dc;p=thirdparty%2Fhaproxy.git BUG/MEDIUM: mworker: use default maxconn in wait mode In bug #1751, it was reported that haproxy is consumming too much memory since the 2.4 version. This is because of a change in the master, which loses completely its configuration in wait mode, and lose its maxconn. Without the maxconn, haproxy will try to compute one itself, and will allocate RAM consequently, too much in our case. Which means the master will have a too high maxconn and too much RAM allocated. The patch fixes the issue by setting the maxconn to the default value when re-executing the master in wait mode. Must be backported as far as 2.5. --- diff --git a/src/haproxy.c b/src/haproxy.c index 32eb4bdc6a..892d821944 100644 --- a/src/haproxy.c +++ b/src/haproxy.c @@ -2244,6 +2244,10 @@ static void init(int argc, char **argv) exit(1); } + /* set the default maxconn in the master, but let it be rewritable with -n */ + if (global.mode & MODE_MWORKER_WAIT) + global.maxconn = DEFAULT_MAXCONN; + if (cfg_maxconn > 0) global.maxconn = cfg_maxconn;