Fix low disk space maintenance

The setting didn't work because the code updated a status flag which
would be overwritten before being read. Also, promotion code now checks
that the server is not in maintenance.
This commit is contained in:
Esa Korhonen
2018-10-12 15:50:23 +03:00
parent 0c203fa02d
commit 2d61b78439
4 changed files with 28 additions and 24 deletions

View File

@ -1676,20 +1676,6 @@ void MariaDBMonitor::enforce_read_only_on_slaves()
}
}
void MariaDBMonitor::set_low_disk_slaves_maintenance()
{
// Only set pure slave and standalone servers to maintenance.
for (MariaDBServer* server : m_servers)
{
if (server->has_status(SERVER_DISK_SPACE_EXHAUSTED) && server->is_usable()
&& !server->is_master() && !server->is_relay_master())
{
server->set_status(SERVER_MAINT);
m_cluster_modified = true;
}
}
}
void MariaDBMonitor::handle_low_disk_space_master()
{
if (m_master && m_master->is_master() && m_master->is_low_on_disk_space())