]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
BUG/MEDIUM: stats: stats bind-process doesn't propagate the process mask correctly
authorCyril Bonté <cyril.bonte@free.fr>
Tue, 23 Feb 2016 23:14:54 +0000 (00:14 +0100)
committerWilly Tarreau <w@1wt.eu>
Wed, 24 Feb 2016 06:38:37 +0000 (07:38 +0100)
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

index dd6f8a23f87640ba1a4bd7394358aacea3992be8..c55a56161fc31d2a11176ebb08271959734770dc 100644 (file)
@@ -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)