Make the servers-array in Monitor private
This prevents derived classes from modifying the array directly, which would be unsafe.
This commit is contained in:
@ -394,7 +394,7 @@ bool ClustrixMonitor::choose_dynamic_hub(Clustrix::Softfailed softfailed, std::s
|
||||
|
||||
bool ClustrixMonitor::choose_bootstrap_hub(Clustrix::Softfailed softfailed, std::set<string>& ips_checked)
|
||||
{
|
||||
for (auto* pMs : m_servers)
|
||||
for (auto* pMs : servers())
|
||||
{
|
||||
if (ips_checked.find(pMs->server->address) == ips_checked.end())
|
||||
{
|
||||
@ -692,7 +692,7 @@ void ClustrixMonitor::check_bootstrap_servers()
|
||||
|
||||
set<string> current_bootstrap_servers;
|
||||
|
||||
for (const auto* pMs : m_servers)
|
||||
for (const auto* pMs : servers())
|
||||
{
|
||||
SERVER* pServer = pMs->server;
|
||||
|
||||
@ -749,7 +749,7 @@ void ClustrixMonitor::persist_bootstrap_servers()
|
||||
{
|
||||
string values;
|
||||
|
||||
for (const auto* pMs : m_servers)
|
||||
for (const auto* pMs : servers())
|
||||
{
|
||||
if (!values.empty())
|
||||
{
|
||||
@ -911,7 +911,7 @@ void ClustrixMonitor::populate_from_bootstrap_servers()
|
||||
{
|
||||
int id = 1;
|
||||
|
||||
for (auto ms : m_servers)
|
||||
for (auto ms : servers())
|
||||
{
|
||||
SERVER* pServer = ms->server;
|
||||
|
||||
@ -940,9 +940,9 @@ void ClustrixMonitor::populate_from_bootstrap_servers()
|
||||
|
||||
void ClustrixMonitor::update_server_statuses()
|
||||
{
|
||||
mxb_assert(!m_servers.empty());
|
||||
mxb_assert(!servers().empty());
|
||||
|
||||
for (auto* pMs : m_servers)
|
||||
for (auto* pMs : servers())
|
||||
{
|
||||
pMs->stash_current_status();
|
||||
|
||||
|
||||
@ -104,7 +104,7 @@ json_t* GaleraMonitor::diagnostics_json() const
|
||||
|
||||
json_t* arr = json_array();
|
||||
|
||||
for (auto ptr : m_servers)
|
||||
for (auto ptr : servers())
|
||||
{
|
||||
auto it = m_info.find(ptr);
|
||||
|
||||
@ -361,7 +361,7 @@ void GaleraMonitor::post_tick()
|
||||
|
||||
m_master = set_cluster_master(m_master, candidate_master, m_disableMasterFailback);
|
||||
|
||||
for (auto ptr : m_servers)
|
||||
for (auto ptr : servers())
|
||||
{
|
||||
const int repl_bits = (SERVER_SLAVE | SERVER_MASTER | SERVER_MASTER_STICKINESS);
|
||||
if ((ptr->pending_status & SERVER_JOINED) && !m_disableMasterRoleSetting)
|
||||
@ -487,7 +487,7 @@ MonitorServer* GaleraMonitor::get_candidate_master()
|
||||
int minval = INT_MAX;
|
||||
int currval;
|
||||
/* set min_id to the lowest value of moitor_servers->server->node_id */
|
||||
for (auto moitor_servers : m_servers)
|
||||
for (auto moitor_servers : servers())
|
||||
{
|
||||
if (!moitor_servers->server->is_in_maint()
|
||||
&& (moitor_servers->pending_status & SERVER_JOINED))
|
||||
@ -603,7 +603,6 @@ static MonitorServer* set_cluster_master(MonitorServer* current_master,
|
||||
*/
|
||||
void GaleraMonitor::update_sst_donor_nodes(int is_cluster)
|
||||
{
|
||||
MonitorServer* ptr;
|
||||
MYSQL_ROW row;
|
||||
MYSQL_RES* result;
|
||||
bool ignore_priority = true;
|
||||
@ -631,7 +630,7 @@ void GaleraMonitor::update_sst_donor_nodes(int is_cluster)
|
||||
strcpy(donor_list, DONOR_LIST_SET_VAR);
|
||||
|
||||
/* Create an array of slave nodes */
|
||||
for (auto ptr : m_servers)
|
||||
for (auto ptr : servers())
|
||||
{
|
||||
if ((ptr->pending_status & SERVER_JOINED) && (ptr->pending_status & SERVER_SLAVE))
|
||||
{
|
||||
|
||||
@ -78,7 +78,7 @@ void MariaDBMonitor::reset_server_info()
|
||||
clear_server_info();
|
||||
|
||||
// Next, initialize the data.
|
||||
for (auto mon_server : Monitor::m_servers)
|
||||
for (auto mon_server : servers())
|
||||
{
|
||||
m_servers.push_back(new MariaDBServer(mon_server, m_servers.size(), m_settings.shared));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user