From f9c99761d680994957ce292ec09fff79a2853125 Mon Sep 17 00:00:00 2001 From: Markus Makela Date: Mon, 16 Nov 2015 13:37:32 +0200 Subject: [PATCH] Monitor_common formatting changes Cleaned up monitor_common.c and monitor_common.h --- server/modules/monitor/monitor_common.c | 428 +++++++++++++----------- server/modules/monitor/monitor_common.h | 59 ++-- 2 files changed, 267 insertions(+), 220 deletions(-) diff --git a/server/modules/monitor/monitor_common.c b/server/modules/monitor/monitor_common.c index c3180d188..8638fd2c1 100644 --- a/server/modules/monitor/monitor_common.c +++ b/server/modules/monitor/monitor_common.c @@ -29,7 +29,7 @@ monitor_event_t mon_name_to_event(char* tok); */ void monitor_set_pending_status(MONITOR_SERVERS *ptr, int bit) { - ptr->pending_status |= bit; + ptr->pending_status |= bit; } /** @@ -40,103 +40,102 @@ void monitor_set_pending_status(MONITOR_SERVERS *ptr, int bit) */ void monitor_clear_pending_status(MONITOR_SERVERS *ptr, int bit) { - ptr->pending_status &= ~bit; + ptr->pending_status &= ~bit; } - - monitor_event_t mon_get_event_type(MONITOR_SERVERS* node) +monitor_event_t mon_get_event_type(MONITOR_SERVERS* node) { unsigned int prev = node->mon_prev_status; - if((prev & (SERVER_MASTER|SERVER_RUNNING)) == (SERVER_MASTER|SERVER_RUNNING) && - SERVER_IS_DOWN(node->server)) + if ((prev & (SERVER_MASTER | SERVER_RUNNING)) == (SERVER_MASTER | SERVER_RUNNING) && + SERVER_IS_DOWN(node->server)) { - return MASTER_DOWN_EVENT; + return MASTER_DOWN_EVENT; } - if((prev & (SERVER_RUNNING)) == 0 && - SERVER_IS_RUNNING(node->server) && SERVER_IS_MASTER(node->server)) + if ((prev & (SERVER_RUNNING)) == 0 && + SERVER_IS_RUNNING(node->server) && SERVER_IS_MASTER(node->server)) { - return MASTER_UP_EVENT; + return MASTER_UP_EVENT; } - if((prev & (SERVER_SLAVE|SERVER_RUNNING)) == (SERVER_SLAVE|SERVER_RUNNING) && - SERVER_IS_DOWN(node->server)) + if ((prev & (SERVER_SLAVE | SERVER_RUNNING)) == (SERVER_SLAVE | SERVER_RUNNING) && + SERVER_IS_DOWN(node->server)) { - return SLAVE_DOWN_EVENT; + return SLAVE_DOWN_EVENT; } - if((prev & (SERVER_RUNNING)) == 0 && - SERVER_IS_RUNNING(node->server) && SERVER_IS_SLAVE(node->server)) + if ((prev & (SERVER_RUNNING)) == 0 && + SERVER_IS_RUNNING(node->server) && SERVER_IS_SLAVE(node->server)) { - return SLAVE_UP_EVENT; + return SLAVE_UP_EVENT; } /** Galera specific events */ - if((prev & (SERVER_JOINED|SERVER_RUNNING)) == (SERVER_JOINED|SERVER_RUNNING) && - SERVER_IS_DOWN(node->server)) + if ((prev & (SERVER_JOINED | SERVER_RUNNING)) == (SERVER_JOINED | SERVER_RUNNING) && + SERVER_IS_DOWN(node->server)) { - return SYNCED_DOWN_EVENT; + return SYNCED_DOWN_EVENT; } - if((prev & (SERVER_RUNNING)) == 0 && - SERVER_IS_RUNNING(node->server) && SERVER_IS_JOINED(node->server)) + if ((prev & (SERVER_RUNNING)) == 0 && + SERVER_IS_RUNNING(node->server) && SERVER_IS_JOINED(node->server)) { - return SYNCED_UP_EVENT; + return SYNCED_UP_EVENT; } /** NDB events*/ - if((prev & (SERVER_NDB|SERVER_RUNNING)) == (SERVER_NDB|SERVER_RUNNING) && - SERVER_IS_DOWN(node->server)) + if ((prev & (SERVER_NDB | SERVER_RUNNING)) == (SERVER_NDB | SERVER_RUNNING) && + SERVER_IS_DOWN(node->server)) { - return NDB_DOWN_EVENT; + return NDB_DOWN_EVENT; } - if((prev & (SERVER_RUNNING)) == 0 && - SERVER_IS_RUNNING(node->server) && SERVER_IS_NDB(node->server)) + if ((prev & (SERVER_RUNNING)) == 0 && + SERVER_IS_RUNNING(node->server) && SERVER_IS_NDB(node->server)) { - return NDB_UP_EVENT; + return NDB_UP_EVENT; } - if((prev & (SERVER_RUNNING)) == SERVER_RUNNING && - SERVER_IS_RUNNING(node->server) && SERVER_IS_MASTER(node->server)) + if ((prev & (SERVER_RUNNING)) == SERVER_RUNNING && + SERVER_IS_RUNNING(node->server) && SERVER_IS_MASTER(node->server)) { - return NEW_MASTER_EVENT; + return NEW_MASTER_EVENT; } - if((prev & (SERVER_RUNNING)) == SERVER_RUNNING && - SERVER_IS_RUNNING(node->server) && SERVER_IS_SLAVE(node->server)) + if ((prev & (SERVER_RUNNING)) == SERVER_RUNNING && + SERVER_IS_RUNNING(node->server) && SERVER_IS_SLAVE(node->server)) { - return NEW_SLAVE_EVENT; + return NEW_SLAVE_EVENT; } /** Status loss events */ - if((prev & (SERVER_RUNNING|SERVER_MASTER)) == (SERVER_RUNNING|SERVER_MASTER) && - SERVER_IS_RUNNING(node->server) && !SERVER_IS_MASTER(node->server)) + if ((prev & (SERVER_RUNNING | SERVER_MASTER)) == (SERVER_RUNNING | SERVER_MASTER) && + SERVER_IS_RUNNING(node->server) && !SERVER_IS_MASTER(node->server)) { - return LOST_MASTER_EVENT; + return LOST_MASTER_EVENT; } - if((prev & (SERVER_RUNNING|SERVER_SLAVE)) == (SERVER_RUNNING|SERVER_SLAVE) && - SERVER_IS_RUNNING(node->server) && !SERVER_IS_SLAVE(node->server)) + if ((prev & (SERVER_RUNNING | SERVER_SLAVE)) == (SERVER_RUNNING | SERVER_SLAVE) && + SERVER_IS_RUNNING(node->server) && !SERVER_IS_SLAVE(node->server)) { - return LOST_SLAVE_EVENT; + return LOST_SLAVE_EVENT; } - if((prev & (SERVER_RUNNING|SERVER_JOINED)) == (SERVER_RUNNING|SERVER_JOINED) && - SERVER_IS_RUNNING(node->server) && !SERVER_IS_JOINED(node->server)) + if ((prev & (SERVER_RUNNING | SERVER_JOINED)) == (SERVER_RUNNING | SERVER_JOINED) && + SERVER_IS_RUNNING(node->server) && !SERVER_IS_JOINED(node->server)) { - return LOST_SYNCED_EVENT; + return LOST_SYNCED_EVENT; } - if((prev & (SERVER_RUNNING|SERVER_NDB)) == (SERVER_RUNNING|SERVER_NDB) && - SERVER_IS_RUNNING(node->server) && !SERVER_IS_NDB(node->server)) + if ((prev & (SERVER_RUNNING | SERVER_NDB)) == (SERVER_RUNNING | SERVER_NDB) && + SERVER_IS_RUNNING(node->server) && !SERVER_IS_NDB(node->server)) { - return LOST_NDB_EVENT; + return LOST_NDB_EVENT; } /** Generic server failure */ - if((prev & SERVER_RUNNING) == 0 && - SERVER_IS_RUNNING(node->server)) + if ((prev & SERVER_RUNNING) == 0 && + SERVER_IS_RUNNING(node->server)) { - return SERVER_UP_EVENT; + return SERVER_UP_EVENT; } - if((prev & SERVER_RUNNING) == SERVER_RUNNING && - SERVER_IS_DOWN(node->server)) + if ((prev & SERVER_RUNNING) == SERVER_RUNNING && + SERVER_IS_DOWN(node->server)) { - return SERVER_DOWN_EVENT; + return SERVER_DOWN_EVENT; } /** Something else, most likely a state that does not matter. @@ -147,83 +146,83 @@ void monitor_clear_pending_status(MONITOR_SERVERS *ptr, int bit) char* mon_get_event_name(MONITOR_SERVERS* node) { - switch(mon_get_event_type(node)) + switch (mon_get_event_type(node)) { -case UNDEFINED_MONITOR_EVENT: - return "undefined"; + case UNDEFINED_MONITOR_EVENT: + return "undefined"; -case MASTER_DOWN_EVENT: - return "master_down"; + case MASTER_DOWN_EVENT: + return "master_down"; -case MASTER_UP_EVENT: - return "master_up"; + case MASTER_UP_EVENT: + return "master_up"; -case SLAVE_DOWN_EVENT: - return "slave_down"; + case SLAVE_DOWN_EVENT: + return "slave_down"; -case SLAVE_UP_EVENT: - return "slave_up"; + case SLAVE_UP_EVENT: + return "slave_up"; -case SERVER_DOWN_EVENT: - return "server_down"; + case SERVER_DOWN_EVENT: + return "server_down"; -case SERVER_UP_EVENT: - return "server_up"; + case SERVER_UP_EVENT: + return "server_up"; -case SYNCED_DOWN_EVENT: - return "synced_down"; + case SYNCED_DOWN_EVENT: + return "synced_down"; -case SYNCED_UP_EVENT: - return "synced_up"; + case SYNCED_UP_EVENT: + return "synced_up"; -case DONOR_DOWN_EVENT: - return "donor_down"; + case DONOR_DOWN_EVENT: + return "donor_down"; -case DONOR_UP_EVENT: - return "donor_up"; + case DONOR_UP_EVENT: + return "donor_up"; -case NDB_DOWN_EVENT: - return "ndb_down"; + case NDB_DOWN_EVENT: + return "ndb_down"; -case NDB_UP_EVENT: - return "ndb_up"; + case NDB_UP_EVENT: + return "ndb_up"; -case LOST_MASTER_EVENT: - return "lost_master"; + case LOST_MASTER_EVENT: + return "lost_master"; -case LOST_SLAVE_EVENT: - return "lost_slave"; + case LOST_SLAVE_EVENT: + return "lost_slave"; -case LOST_SYNCED_EVENT: - return "lost_synced"; + case LOST_SYNCED_EVENT: + return "lost_synced"; -case LOST_DONOR_EVENT: - return "lost_donor"; + case LOST_DONOR_EVENT: + return "lost_donor"; -case LOST_NDB_EVENT: - return "lost_ndb"; + case LOST_NDB_EVENT: + return "lost_ndb"; -case NEW_MASTER_EVENT: - return "new_master"; + case NEW_MASTER_EVENT: + return "new_master"; -case NEW_SLAVE_EVENT: - return "new_slave"; + case NEW_SLAVE_EVENT: + return "new_slave"; -case NEW_SYNCED_EVENT: - return "new_synced"; + case NEW_SYNCED_EVENT: + return "new_synced"; -case NEW_DONOR_EVENT: - return "new_donor"; + case NEW_DONOR_EVENT: + return "new_donor"; - case NEW_NDB_EVENT: - return "new_ndb"; + case NEW_NDB_EVENT: + return "new_ndb"; - default: - return "MONITOR_EVENT_FAILURE"; + default: + return "MONITOR_EVENT_FAILURE"; } - + } /** @@ -240,7 +239,7 @@ void mon_append_node_names(MONITOR_SERVERS* start, char* dest, int len) char arr[MAX_SERVER_NAME_LEN + 32]; // Some extra space for port while (ptr && slen < len) { - if(SERVER_IS_RUNNING(ptr->server)) + if (SERVER_IS_RUNNING(ptr->server)) { if (!first) { @@ -262,23 +261,25 @@ void mon_append_node_names(MONITOR_SERVERS* start, char* dest, int len) * @return true if status has changed or false */ bool mon_status_changed( - MONITOR_SERVERS* mon_srv) + MONITOR_SERVERS* mon_srv) { - bool succp; + bool succp; - /** This is the first time the server was set with a status*/ - if (mon_srv->mon_prev_status == -1) - return false; + /** This is the first time the server was set with a status*/ + if (mon_srv->mon_prev_status == -1) + { + return false; + } - if (mon_srv->mon_prev_status != mon_srv->server->status) - { - succp = true; - } - else - { - succp = false; - } - return succp; + if (mon_srv->mon_prev_status != mon_srv->server->status) + { + succp = true; + } + else + { + succp = false; + } + return succp; } /** @@ -288,20 +289,20 @@ bool mon_status_changed( * @return true if failed status can be logged or false */ bool mon_print_fail_status( - MONITOR_SERVERS* mon_srv) + MONITOR_SERVERS* mon_srv) { - bool succp; - int errcount = mon_srv->mon_err_count; + bool succp; + int errcount = mon_srv->mon_err_count; - if (SERVER_IS_DOWN(mon_srv->server) && errcount == 0) - { - succp = true; - } - else - { - succp = false; - } - return succp; + if (SERVER_IS_DOWN(mon_srv->server) && errcount == 0) + { + succp = true; + } + else + { + succp = false; + } + return succp; } /** @@ -350,26 +351,28 @@ void monitor_launch_script(MONITOR* mon, MONITOR_SERVERS* ptr, char* script) * @return 0 on success. 1 when an error has occurred or an unexpected event was * found. */ -int mon_parse_event_string(bool* events, size_t count,char* string) +int mon_parse_event_string(bool* events, size_t count, char* string) { - char *tok,*saved; + char *tok, *saved; monitor_event_t event; - tok = strtok_r(string,",| ",&saved); + tok = strtok_r(string, ",| ", &saved); - if(tok == NULL) - return -1; - - while(tok) + if (tok == NULL) { - event = mon_name_to_event(tok); - if(event == UNDEFINED_MONITOR_EVENT) - { - skygw_log_write(LE,"Error: Invalid event name %s",tok); - return -1; - } - events[event] = true; - tok = strtok_r(NULL,",| ",&saved); + return -1; + } + + while (tok) + { + event = mon_name_to_event(tok); + if (event == UNDEFINED_MONITOR_EVENT) + { + skygw_log_write(LE, "Error: Invalid event name %s", tok); + return -1; + } + events[event] = true; + tok = strtok_r(NULL, ",| ", &saved); } return 0; @@ -377,54 +380,97 @@ int mon_parse_event_string(bool* events, size_t count,char* string) monitor_event_t mon_name_to_event(char* tok) { - if(!strcasecmp("master_down",tok)) - return MASTER_DOWN_EVENT; - else if(!strcasecmp("master_up",tok)) - return MASTER_UP_EVENT; - else if(!strcasecmp("slave_down",tok)) - return SLAVE_DOWN_EVENT; - else if(!strcasecmp("slave_up",tok)) - return SLAVE_UP_EVENT; - else if(!strcasecmp("server_down",tok)) - return SERVER_DOWN_EVENT; - else if(!strcasecmp("server_up",tok)) - return SERVER_UP_EVENT; - else if(!strcasecmp("synced_down",tok)) - return SYNCED_DOWN_EVENT; - else if(!strcasecmp("synced_up",tok)) - return SYNCED_UP_EVENT; - else if(!strcasecmp("donor_down",tok)) - return DONOR_DOWN_EVENT; - else if(!strcasecmp("donor_up",tok)) - return DONOR_UP_EVENT; - else if(!strcasecmp("ndb_down",tok)) - return NDB_DOWN_EVENT; - else if(!strcasecmp("ndb_up",tok)) - return NDB_UP_EVENT; - else if(!strcasecmp("lost_master",tok)) - return LOST_MASTER_EVENT; - else if(!strcasecmp("lost_slave",tok)) - return LOST_SLAVE_EVENT; - else if(!strcasecmp("lost_synced",tok)) - return LOST_SYNCED_EVENT; - else if(!strcasecmp("lost_donor",tok)) - return LOST_DONOR_EVENT; - else if(!strcasecmp("lost_ndb",tok)) - return LOST_NDB_EVENT; - else if(!strcasecmp("new_master",tok)) - return NEW_MASTER_EVENT; - else if(!strcasecmp("new_slave",tok)) - return NEW_SLAVE_EVENT; - else if(!strcasecmp("new_synced",tok)) - return NEW_SYNCED_EVENT; - else if(!strcasecmp("new_donor",tok)) - return NEW_DONOR_EVENT; - else if(!strcasecmp("new_ndb",tok)) - return NEW_NDB_EVENT; - else - return UNDEFINED_MONITOR_EVENT; - + if (!strcasecmp("master_down", tok)) + { + return MASTER_DOWN_EVENT; } + else if (!strcasecmp("master_up", tok)) + { + return MASTER_UP_EVENT; + } + else if (!strcasecmp("slave_down", tok)) + { + return SLAVE_DOWN_EVENT; + } + else if (!strcasecmp("slave_up", tok)) + { + return SLAVE_UP_EVENT; + } + else if (!strcasecmp("server_down", tok)) + { + return SERVER_DOWN_EVENT; + } + else if (!strcasecmp("server_up", tok)) + { + return SERVER_UP_EVENT; + } + else if (!strcasecmp("synced_down", tok)) + { + return SYNCED_DOWN_EVENT; + } + else if (!strcasecmp("synced_up", tok)) + { + return SYNCED_UP_EVENT; + } + else if (!strcasecmp("donor_down", tok)) + { + return DONOR_DOWN_EVENT; + } + else if (!strcasecmp("donor_up", tok)) + { + return DONOR_UP_EVENT; + } + else if (!strcasecmp("ndb_down", tok)) + { + return NDB_DOWN_EVENT; + } + else if (!strcasecmp("ndb_up", tok)) + { + return NDB_UP_EVENT; + } + else if (!strcasecmp("lost_master", tok)) + { + return LOST_MASTER_EVENT; + } + else if (!strcasecmp("lost_slave", tok)) + { + return LOST_SLAVE_EVENT; + } + else if (!strcasecmp("lost_synced", tok)) + { + return LOST_SYNCED_EVENT; + } + else if (!strcasecmp("lost_donor", tok)) + { + return LOST_DONOR_EVENT; + } + else if (!strcasecmp("lost_ndb", tok)) + { + return LOST_NDB_EVENT; + } + else if (!strcasecmp("new_master", tok)) + { + return NEW_MASTER_EVENT; + } + else if (!strcasecmp("new_slave", tok)) + { + return NEW_SLAVE_EVENT; + } + else if (!strcasecmp("new_synced", tok)) + { + return NEW_SYNCED_EVENT; + } + else if (!strcasecmp("new_donor", tok)) + { + return NEW_DONOR_EVENT; + } + else if (!strcasecmp("new_ndb", tok)) + { + return NEW_NDB_EVENT; + } + + return UNDEFINED_MONITOR_EVENT; +} /** * Connect to a database. This will always leave a valid database handle in the diff --git a/server/modules/monitor/monitor_common.h b/server/modules/monitor/monitor_common.h index 3f944befc..13b191001 100644 --- a/server/modules/monitor/monitor_common.h +++ b/server/modules/monitor/monitor_common.h @@ -38,32 +38,33 @@ /** Monitor events that are caused by servers moving from * one state to another.*/ -typedef enum { - UNDEFINED_MONITOR_EVENT, - MASTER_DOWN_EVENT, - MASTER_UP_EVENT, - SLAVE_DOWN_EVENT, - SLAVE_UP_EVENT, - SERVER_DOWN_EVENT, - SERVER_UP_EVENT, - SYNCED_DOWN_EVENT, - SYNCED_UP_EVENT, - DONOR_DOWN_EVENT, - DONOR_UP_EVENT, - NDB_DOWN_EVENT, - NDB_UP_EVENT, - LOST_MASTER_EVENT, - LOST_SLAVE_EVENT, - LOST_SYNCED_EVENT, - LOST_DONOR_EVENT, - LOST_NDB_EVENT, - NEW_MASTER_EVENT, - NEW_SLAVE_EVENT, - NEW_SYNCED_EVENT, - NEW_DONOR_EVENT, - NEW_NDB_EVENT, - MAX_MONITOR_EVENT -}monitor_event_t; +typedef enum +{ + UNDEFINED_MONITOR_EVENT, + MASTER_DOWN_EVENT, + MASTER_UP_EVENT, + SLAVE_DOWN_EVENT, + SLAVE_UP_EVENT, + SERVER_DOWN_EVENT, + SERVER_UP_EVENT, + SYNCED_DOWN_EVENT, + SYNCED_UP_EVENT, + DONOR_DOWN_EVENT, + DONOR_UP_EVENT, + NDB_DOWN_EVENT, + NDB_UP_EVENT, + LOST_MASTER_EVENT, + LOST_SLAVE_EVENT, + LOST_SYNCED_EVENT, + LOST_DONOR_EVENT, + LOST_NDB_EVENT, + NEW_MASTER_EVENT, + NEW_SLAVE_EVENT, + NEW_SYNCED_EVENT, + NEW_DONOR_EVENT, + NEW_NDB_EVENT, + MAX_MONITOR_EVENT +} monitor_event_t; typedef enum { @@ -72,15 +73,15 @@ typedef enum MONITOR_CONN_TIMEOUT } connect_result_t; -void mon_append_node_names(MONITOR_SERVERS* start,char* str, int len); +void mon_append_node_names(MONITOR_SERVERS* start, char* str, int len); monitor_event_t mon_get_event_type(MONITOR_SERVERS* node); char* mon_get_event_name(MONITOR_SERVERS* node); void monitor_clear_pending_status(MONITOR_SERVERS *ptr, int bit); void monitor_set_pending_status(MONITOR_SERVERS *ptr, int bit); bool mon_status_changed(MONITOR_SERVERS* mon_srv); bool mon_print_fail_status(MONITOR_SERVERS* mon_srv); -void monitor_launch_script(MONITOR* mon,MONITOR_SERVERS* ptr, char* script); -int mon_parse_event_string(bool* events, size_t count,char* string); +void monitor_launch_script(MONITOR* mon, MONITOR_SERVERS* ptr, char* script); +int mon_parse_event_string(bool* events, size_t count, char* string); connect_result_t mon_connect_to_db(MONITOR* mon, MONITOR_SERVERS *database); void mon_log_connect_error(MONITOR_SERVERS* database, connect_result_t rval); #endif