With nbproc > 1, it is possible to specify on which process the stats socket will be bound using "stats bind-process", but the behaviour was not correct, ignoring the value in some configurations.
Example : global nbproc 4 stats bind-process 1 stats socket /var/run/haproxy.sock With such a configuration, all the processes will listen on the stats socket. As a workaround, it is also possible to declare a "process" keyword on the "stats stocket" line. The patch must be applied to 1.7, 1.6 and 1.5 --- src/cfgparse.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/cfgparse.c b/src/cfgparse.c index dd6f8a2..c55a561 100644 --- a/src/cfgparse.c +++ b/src/cfgparse.c @@ -8647,7 +8647,7 @@ out_uri_auth_compat: list_for_each_entry(bind_conf, &global.stats_fe->conf.bind, by_fe) { unsigned long mask; - mask = bind_conf->bind_proc ? bind_conf->bind_proc : nbits(global.nbproc); + mask = bind_conf->bind_proc ? bind_conf->bind_proc : 0; global.stats_fe->bind_proc |= mask; } if (!global.stats_fe->bind_proc) -- 2.7.0