26#include <shared_mutex>
48 std::string
role()
const;
84#ifdef DEBUG_SWITCHOVER_LAG
85 static bool m_debug_sro_new_primary;
91 int kill_query(
const std::string &pid, std::string &errmsg);
98 const std::string &
value);
126#ifdef DEBUG_SWITCHOVER_LAG
128 static bool m_debug_sro;
129 static int m_debug_sro_max_attempts;
130 static int m_debug_sro_count;
131 static bool m_debug_sro_value;
Group replication status listener.
Definition: health_monitor_server.h:56
static mysql_service_status_t notify_member_state_change(const char *) noexcept
Definition: health_monitor_server.cc:110
static mysql_service_status_t notify_member_role_change(const char *) noexcept
Definition: health_monitor_server.cc:92
Server utility class.
Definition: health_monitor_server.h:73
static bool get_read_only(bool &error)
Get the value of READ_ONLY.
Definition: health_monitor_server.cc:559
static int unregister_group_member_status_listeners()
Unregister the group member status listener.
Definition: health_monitor_server.cc:147
static bool set_super_read_only()
Set SUPER_READ_ONLY = ON.
Definition: health_monitor_server.cc:542
static bool get_system_variable(const std::string &name, std::string &value)
Get server system variable.
Definition: health_monitor_server.cc:405
int kill_query(const std::string &pid, std::string &errmsg)
Terminate the query running on a connection.
Definition: health_monitor_server.cc:296
static std::string get_offline_mode_str()
OFFLINE_MODE message string.
Definition: health_monitor_server.cc:467
static bool is_member_online_with_group_majority()
Determine if the server is online and in a group majority.
Definition: health_monitor_server.cc:228
static int register_group_member_status_listeners()
Register the group member status listener.
Definition: health_monitor_server.cc:138
static bool get_super_read_only(bool &error)
Get the value of SUPER_READ_ONLY.
Definition: health_monitor_server.cc:501
int kill_connection(const std::string &pid, std::string &errmsg)
Terminate a server thread given a proceslist id.
Definition: health_monitor_server.cc:325
static bool clear_offline_mode()
Clear OFFLINE_MODE, set to OFF.
Definition: health_monitor_server.cc:492
Processlist_Ids get_fg_sessions_with_global_lock()
Get list of foreground sessions holding a global read lock.
Definition: health_monitor_server.cc:238
static bool is_group_replication_primary()
Determine if the server is a group replication primary.
Definition: health_monitor_server.cc:212
static bool is_group_replication_secondary()
Determine if the server is a group replication secondary.
Definition: health_monitor_server.cc:220
static bool clear_super_read_only()
Clear SUPER_READ_ONLY, set to OFF.
Definition: health_monitor_server.cc:550
static GR_Status get_group_replication_status()
Get the current group replication status.
Definition: health_monitor_server.cc:165
static GR_Status m_gr_status
Group replication status.
Definition: health_monitor_server.h:123
static bool set_offline_mode()
Set OFFLINE_MODE = ON.
Definition: health_monitor_server.cc:483
static bool get_status_variable(const std::string &name, std::string &value)
Get server global status variable.
Definition: health_monitor_server.cc:428
static std::string get_super_read_only_str()
SUPER_READ_ONLY message string.
Definition: health_monitor_server.cc:525
static Processlist_Ids processlist_id_list(Result_Set &results)
Build a list of processlist ids from a result set.
Definition: health_monitor_server.cc:274
static bool get_offline_mode(bool &error)
Get the value of OFFLINE_MODE.
Definition: health_monitor_server.cc:454
static bool set_system_variable(const std::string &name, const std::string &value)
Set server system variable.
Definition: health_monitor_server.cc:352
static void set_group_replication_status(const char *view_id)
Set the internal group replication status.
Definition: health_monitor_server.cc:202
static bool get_log_diagnostic_enable(bool &error)
Get the value of LOG_DIAGNOSTIC_ENABLE.
Definition: health_monitor_server.cc:587
static GR_Status gr_status()
Get the group replication status.
Definition: health_monitor_server.cc:155
static bool clear_read_only()
Clear READ_ONLY, set to OFF.
Definition: health_monitor_server.cc:573
static std::string & to_lower(std::string &str)
Convert string to lower case.
Definition: health_monitor_server.cc:601
static std::shared_mutex m_gr_mutex
Initialize static members.
Definition: health_monitor_server.h:124
void error(const char *format,...)
std::string str(const mysqlrouter::ConfigGenerator::Options::Endpoint &ep)
Definition: config_generator.cc:1077
Definition: component_command.h:29
std::vector< Row > Result_Set
Definition: health_monitor_query.h:33
std::vector< std::string > Processlist_Ids
Definition: health_monitor_server.h:36
ValueType value(const std::optional< ValueType > &v)
Definition: gtid.h:83
#define DEFINE_BOOL_METHOD(name, args)
A short macro to define method that returns bool, which is the most common case.
Definition: service_implementation.h:88
case opt name
Definition: sslopt-case.h:29
Group Replication status.
Definition: health_monitor_server.h:41
bool online_with_group_majority
Definition: health_monitor_server.h:47
bool valid
Definition: health_monitor_server.h:43
std::string view_id
Definition: health_monitor_server.h:49
bool single_primary_mode
Definition: health_monitor_server.h:44
std::string role() const
Group Replication role name.
Definition: health_monitor_server.cc:124
bool single_primary_mode_secondary
Definition: health_monitor_server.h:46
bool single_primary_mode_primary
Definition: health_monitor_server.h:45