MXS-1845 Only rebuild topology when required
The monitor now detects when a server has changed such that a replication graph rebuild is needed and only then rebuilds the graph and detects cycles and master. Also, some old code is no longer called in the monitor cycle. It will be removed in later commits. Refactored some of the related functions.
This commit is contained in:
@ -187,19 +187,19 @@ private:
|
||||
bool standalone_master_required();
|
||||
bool set_standalone_master();
|
||||
void assign_relay_master(MariaDBServer& serv_info);
|
||||
void log_master_changes(MariaDBServer* root_master);
|
||||
void log_master_changes();
|
||||
void update_gtid_domain();
|
||||
void update_external_master();
|
||||
void set_master_heartbeat(MariaDBServer*);
|
||||
void set_slave_heartbeat(MariaDBServer*);
|
||||
void measure_replication_lag(MariaDBServer* root_master);
|
||||
void measure_replication_lag();
|
||||
void check_maxscale_schema_replication();
|
||||
MXS_MONITORED_SERVER* getServerByNodeId(long);
|
||||
MXS_MONITORED_SERVER* getSlaveOfNodeId(long, slave_down_setting_t);
|
||||
void build_replication_graph();
|
||||
void tarjan_scc_visit_node(MariaDBServer *node, ServerArray* stack, int *index, int *cycle);
|
||||
void assign_cycle_roles(int cycle);
|
||||
MariaDBServer* find_topology_master_server();
|
||||
MariaDBServer* find_topology_master_server(std::string* msg_out);
|
||||
MariaDBServer* find_best_reach_server(const ServerArray& candidates);
|
||||
void calculate_node_reach(MariaDBServer* node);
|
||||
int calc_reach_visit_node(MariaDBServer* node);
|
||||
|
Reference in New Issue
Block a user