BUG/MEDIUM: stats: the web interface must check the tracked servers before enabling
authorWilly Tarreau <w@1wt.eu>
Sat, 28 Dec 2013 20:28:49 +0000 (21:28 +0100)
committerWilly Tarreau <w@1wt.eu>
Sat, 28 Dec 2013 20:33:36 +0000 (21:33 +0100)
commita3ae932d3498eb154604cf319a9c49636c4f859d
treeb4cce0bd6bbe3b6d7a5da1463f3e4c7a419334d1
parente24d96393a2e93e1a4819098b19228fa1d3683d8
BUG/MEDIUM: stats: the web interface must check the tracked servers before enabling

When enabling a tracked server via the web interface, we must first
check if the server tracks another one and the state of this tracked
server, just like the command line does.

Failure to do so causes incorrect logs to be emitted when the server
is enabled :

[WARNING] 361/212556 (2645) : Server bck2/srv3 is DOWN via bck2/srv2. 2 active and 0 backup servers left. 0 sessions active, 0 requeued, 0 remaining in queue.
[WARNING] 361/212603 (2645) : Server bck2/srv3 is DOWN for maintenance.
--> enable server now
[WARNING] 361/212606 (2645) : Server bck2/srv3 is UP (leaving maintenance).

With this fix, it's correct now :

[WARNING] 361/212805 (2666) : Server bck2/srv3 is DOWN via bck2/srv2. 2 active and 0 backup servers left. 0 sessions active, 0 requeued, 0 remaining in queue.
[WARNING] 361/212813 (2666) : Server bck2/srv3 is DOWN for maintenance.
--> enable server now
[WARNING] 361/212821 (2666) : Server bck2/srv3 is DOWN via bck2/srv2. 2 active and 0 backup servers left. 0 sessions active, 0 requeued, 0 remaining in queue.

It does not seem necessary to backport this fix, considering that it
depends on extremely fragile behaviours, there are more risks of breakage
caused by a backport than the current inconvenience.
src/dumpstats.c