From e31148031f5c5327b342fe268d0cd4c882b0511d Mon Sep 17 00:00:00 2001 From: Emeric Brun Date: Thu, 21 Dec 2017 14:42:26 +0100 Subject: [PATCH] BUG/MEDIUM: checks: a server passed in maint state was not forced down. Setting a server in maint mode, the required next_state was not set before calling the 'lb_down' function and so the system state was never commited. This patch should be backported in 1.8 --- src/server.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/server.c b/src/server.c index 23e4cc98e..a37e91968 100644 --- a/src/server.c +++ b/src/server.c @@ -4630,10 +4630,11 @@ void srv_update_status(struct server *s) else { /* server was still running */ check->health = 0; /* failure */ s->last_change = now.tv_sec; + + s->next_state = SRV_ST_STOPPED; if (s->proxy->lbprm.set_server_status_down) s->proxy->lbprm.set_server_status_down(s); - s->next_state = SRV_ST_STOPPED; if (s->onmarkeddown & HANA_ONMARKEDDOWN_SHUTDOWNSESSIONS) srv_shutdown_streams(s, SF_ERR_DOWN);