MXS-2220 Move server status functions inside class
This commit is contained in:
@ -87,7 +87,7 @@ HintRouterSession* HintRouter::newSession(MXS_SESSION* pSession)
|
||||
{
|
||||
if (server_ref_is_active(pSref))
|
||||
{
|
||||
if (server_is_master(pSref->server))
|
||||
if (pSref->server->is_master())
|
||||
{
|
||||
if (!master_ref)
|
||||
{
|
||||
@ -98,7 +98,7 @@ HintRouterSession* HintRouter::newSession(MXS_SESSION* pSession)
|
||||
MXS_WARNING("Found multiple master servers when creating session.\n");
|
||||
}
|
||||
}
|
||||
else if (server_is_slave(pSref->server))
|
||||
else if (pSref->server->is_slave())
|
||||
{
|
||||
slave_refs.push_back(pSref);
|
||||
}
|
||||
|
||||
@ -204,7 +204,7 @@ bool HintRouterSession::route_by_hint(GWBUF* pPacket, HINT* hint, bool print_err
|
||||
{
|
||||
bool master_ok = false;
|
||||
// The master server should be already known, but may have changed
|
||||
if (m_master.get() && server_is_master(m_master.server()))
|
||||
if (m_master.get() && m_master.server()->is_master())
|
||||
{
|
||||
master_ok = true;
|
||||
}
|
||||
@ -317,7 +317,7 @@ bool HintRouterSession::route_to_slave(GWBUF* pPacket, bool print_errors)
|
||||
for (size_type curr = begin; curr != limit; curr++)
|
||||
{
|
||||
Dcb& candidate = m_slaves.at(curr % size);
|
||||
if (server_is_slave(candidate.server()))
|
||||
if (candidate.server()->is_slave())
|
||||
{
|
||||
HR_DEBUG("Writing packet to slave: '%s'.", candidate.server()->name());
|
||||
success = candidate.write(pPacket);
|
||||
@ -392,7 +392,7 @@ void HintRouterSession::update_connections()
|
||||
iter != m_backends.end(); iter++)
|
||||
{
|
||||
SERVER* server = iter->second.get()->server;
|
||||
if (server_is_master(server))
|
||||
if (server->is_master())
|
||||
{
|
||||
if (!m_master.get())
|
||||
{
|
||||
@ -403,7 +403,7 @@ void HintRouterSession::update_connections()
|
||||
MXS_WARNING("Found multiple master servers when updating connections.");
|
||||
}
|
||||
}
|
||||
else if (server_is_slave(server))
|
||||
else if (server->is_slave())
|
||||
{
|
||||
m_slaves.push_back(iter->second);
|
||||
}
|
||||
|
||||
@ -315,13 +315,13 @@ static MXS_ROUTER_SESSION* newSession(MXS_ROUTER* instance, MXS_SESSION* session
|
||||
*/
|
||||
for (SERVER_REF* ref = inst->service->dbref; ref; ref = ref->next)
|
||||
{
|
||||
if (!server_ref_is_active(ref) || server_is_in_maint(ref->server))
|
||||
if (!server_ref_is_active(ref) || ref->server->is_in_maint())
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
/* Check server status bits against bitvalue from router_options */
|
||||
if (ref && server_is_usable(ref->server)
|
||||
if (ref && ref->server->is_usable()
|
||||
&& (ref->server->status & client_rses->bitmask & client_rses->bitvalue))
|
||||
{
|
||||
if (master_host)
|
||||
@ -481,11 +481,11 @@ static void log_closed_session(mxs_mysql_cmd_t mysql_command, SERVER_REF* ref)
|
||||
{
|
||||
char msg[SERVER::MAX_ADDRESS_LEN + 200] = ""; // Extra space for message
|
||||
|
||||
if (server_is_down(ref->server))
|
||||
if (ref->server->is_down())
|
||||
{
|
||||
sprintf(msg, "Server '%s' is down.", ref->server->name());
|
||||
}
|
||||
else if (server_is_in_maint(ref->server))
|
||||
else if (ref->server->is_in_maint())
|
||||
{
|
||||
sprintf(msg, "Server '%s' is in maintenance.", ref->server->name());
|
||||
}
|
||||
@ -513,7 +513,7 @@ static inline bool connection_is_valid(ROUTER_INSTANCE* inst, ROUTER_CLIENT_SES*
|
||||
// 'router_options=slave' in the configuration file and there was only
|
||||
// the sole master available at session creation time.
|
||||
|
||||
if (server_is_usable(router_cli_ses->backend->server)
|
||||
if (router_cli_ses->backend->server->is_usable()
|
||||
&& (router_cli_ses->backend->server->status & router_cli_ses->bitmask & router_cli_ses->bitvalue))
|
||||
{
|
||||
// Note the use of '==' and not '|'. We must use the former to exclude a
|
||||
@ -737,7 +737,7 @@ static SERVER_REF* get_root_master(SERVER_REF* servers)
|
||||
SERVER_REF* master_host = NULL;
|
||||
for (SERVER_REF* ref = servers; ref; ref = ref->next)
|
||||
{
|
||||
if (ref->active && server_is_master(ref->server))
|
||||
if (ref->active && ref->server->is_master())
|
||||
{
|
||||
// No master found yet or this one has better weight.
|
||||
if (master_host == NULL || ref->server_weight > master_host->server_weight)
|
||||
|
||||
@ -118,10 +118,6 @@ static const MXS_ENUM_VALUE master_failure_mode_values[] =
|
||||
#define CONFIG_MAX_SLAVE_RLAG -1 /**< not used */
|
||||
#define CONFIG_SQL_VARIABLES_IN TYPE_ALL
|
||||
|
||||
#define BACKEND_TYPE(b) \
|
||||
(server_is_master((b)->backend_server) ? BE_MASTER \
|
||||
: (server_is_slave((b)->backend_server) ? BE_SLAVE : BE_UNDEFINED));
|
||||
|
||||
#define MARIADB_WAIT_GTID_FUNC "MASTER_GTID_WAIT"
|
||||
#define MYSQL_WAIT_GTID_FUNC "WAIT_FOR_EXECUTED_GTID_SET"
|
||||
static const char gtid_wait_stmt[] =
|
||||
|
||||
@ -127,7 +127,7 @@ bool connect_backend_servers(SSRBackendList& backends, MXS_SESSION* session)
|
||||
{
|
||||
SERVER_REF* b = (*it)->backend();
|
||||
|
||||
if (server_is_usable(b->server))
|
||||
if (b->server->is_usable())
|
||||
{
|
||||
servers_found += 1;
|
||||
|
||||
|
||||
@ -214,7 +214,7 @@ SERVER* SchemaRouterSession::resolve_query_target(GWBUF* pPacket,
|
||||
/** We either don't know or don't care where this query should go */
|
||||
target = get_shard_target(pPacket, type);
|
||||
|
||||
if (target && server_is_usable(target))
|
||||
if (target && target->is_usable())
|
||||
{
|
||||
route_target = TARGET_NAMED_SERVER;
|
||||
}
|
||||
@ -241,7 +241,7 @@ SERVER* SchemaRouterSession::resolve_query_target(GWBUF* pPacket,
|
||||
for (SSRBackendList::iterator it = m_backends.begin(); it != m_backends.end(); it++)
|
||||
{
|
||||
SERVER* server = (*it)->backend()->server;
|
||||
if (server_is_usable(server))
|
||||
if (server->is_usable())
|
||||
{
|
||||
route_target = TARGET_NAMED_SERVER;
|
||||
target = server;
|
||||
@ -762,7 +762,7 @@ bool SchemaRouterSession::route_session_write(GWBUF* querybuf, uint8_t command)
|
||||
if (mxs_log_is_priority_enabled(LOG_INFO))
|
||||
{
|
||||
MXS_INFO("Route query to %s\t%s:%d",
|
||||
server_is_master((*it)->backend()->server) ? "master" : "slave",
|
||||
(*it)->backend()->server->is_master() ? "master" : "slave",
|
||||
(*it)->backend()->server->address,
|
||||
(*it)->backend()->server->port);
|
||||
}
|
||||
@ -1393,7 +1393,7 @@ void SchemaRouterSession::query_databases()
|
||||
|
||||
for (SSRBackendList::iterator it = m_backends.begin(); it != m_backends.end(); it++)
|
||||
{
|
||||
if ((*it)->in_use() && !(*it)->is_closed() && server_is_usable((*it)->backend()->server))
|
||||
if ((*it)->in_use() && !(*it)->is_closed() && (*it)->backend()->server->is_usable())
|
||||
{
|
||||
GWBUF* clone = gwbuf_clone(buffer);
|
||||
MXS_ABORT_IF_NULL(clone);
|
||||
@ -1496,7 +1496,7 @@ bool SchemaRouterSession::get_shard_dcb(DCB** p_dcb, const char* name)
|
||||
*/
|
||||
if ((*it)->in_use()
|
||||
&& (strncasecmp(name, b->server->name(), PATH_MAX) == 0)
|
||||
&& server_is_usable(b->server))
|
||||
&& b->server->is_usable())
|
||||
{
|
||||
*p_dcb = (*it)->dcb();
|
||||
succp = true;
|
||||
|
||||
Reference in New Issue
Block a user