diff --git a/server/modules/monitor/auroramon/auroramon.cc b/server/modules/monitor/auroramon/auroramon.cc index a29039175..2825e1a11 100644 --- a/server/modules/monitor/auroramon/auroramon.cc +++ b/server/modules/monitor/auroramon/auroramon.cc @@ -81,9 +81,10 @@ void AuroraMonitor::update_server_status(MXS_MONITORED_SERVER* monitored_server) return; } - monitor_clear_pending_status(monitored_server, - SERVER_RUNNING | SERVER_MASTER | SERVER_SLAVE | SERVER_AUTH_ERROR); + monitor_clear_pending_status(monitored_server, SERVER_AUTH_ERROR); monitor_set_pending_status(monitored_server, SERVER_RUNNING); + + monitor_clear_pending_status(monitored_server, SERVER_MASTER | SERVER_SLAVE); MYSQL_RES *result; /** Connection is OK, query for replica status */ diff --git a/server/modules/monitor/galeramon/galeramon.cc b/server/modules/monitor/galeramon/galeramon.cc index 510940161..9242f6b1b 100644 --- a/server/modules/monitor/galeramon/galeramon.cc +++ b/server/modules/monitor/galeramon/galeramon.cc @@ -287,13 +287,13 @@ void GaleraMonitor::update_server_status(MXS_MONITORED_SERVER* monitored_server) return; } + server_clear_status_nolock(monitored_server->server, SERVER_AUTH_ERROR); + server_set_status_nolock(monitored_server->server, SERVER_RUNNING); + MYSQL_ROW row; MYSQL_RES *result; char *server_string; - /* If we get this far then we have a working connection */ - server_set_status_nolock(monitored_server->server, SERVER_RUNNING); - /* get server version string */ mxs_mysql_set_server_version(monitored_server->con, monitored_server->server); server_string = monitored_server->server->version_string; diff --git a/server/modules/monitor/grmon/grmon.cc b/server/modules/monitor/grmon/grmon.cc index 08d786dbc..0ad63b7b1 100644 --- a/server/modules/monitor/grmon/grmon.cc +++ b/server/modules/monitor/grmon/grmon.cc @@ -152,7 +152,7 @@ void GRMon::update_server_status(MXS_MONITORED_SERVER* monitored_server) return; } - /* If we get this far then we have a working connection */ + monitor_clear_pending_status(monitored_server, SERVER_AUTH_ERROR); monitor_set_pending_status(monitored_server, SERVER_RUNNING); if (is_master(monitored_server)) diff --git a/server/modules/monitor/mmmon/mmmon.cc b/server/modules/monitor/mmmon/mmmon.cc index e8c5137e6..fd32d22a3 100644 --- a/server/modules/monitor/mmmon/mmmon.cc +++ b/server/modules/monitor/mmmon/mmmon.cc @@ -176,6 +176,8 @@ void MMMonitor::update_server_status(MXS_MONITORED_SERVER* monitored_server) server_clear_status_nolock(monitored_server->server, SERVER_AUTH_ERROR); monitor_clear_pending_status(monitored_server, SERVER_AUTH_ERROR); + server_set_status_nolock(monitored_server->server, SERVER_RUNNING); + monitor_set_pending_status(monitored_server, SERVER_RUNNING); MYSQL_ROW row; MYSQL_RES *result; @@ -184,9 +186,6 @@ void MMMonitor::update_server_status(MXS_MONITORED_SERVER* monitored_server) unsigned long int server_version = 0; char *server_string; - /* Store current status in both server and monitor server pending struct */ - server_set_status_nolock(monitored_server->server, SERVER_RUNNING); - monitor_set_pending_status(monitored_server, SERVER_RUNNING); /* get server version from current server */ server_version = mysql_get_server_version(monitored_server->con); diff --git a/server/modules/monitor/ndbclustermon/ndbclustermon.cc b/server/modules/monitor/ndbclustermon/ndbclustermon.cc index 95d5a331e..69925ed2e 100644 --- a/server/modules/monitor/ndbclustermon/ndbclustermon.cc +++ b/server/modules/monitor/ndbclustermon/ndbclustermon.cc @@ -155,7 +155,6 @@ void NDBCMonitor::update_server_status(MXS_MONITORED_SERVER* monitored_server) } monitor_clear_pending_status(monitored_server, SERVER_AUTH_ERROR); - /* If we get this far then we have a working connection */ monitor_set_pending_status(monitored_server, SERVER_RUNNING); MYSQL_ROW row;