Fix false master failure log message

The message would be logged even if the session continues.
This commit is contained in:
Markus Mäkelä
2018-11-23 13:17:24 +02:00
parent 8b92c63248
commit 925670ae2f

View File

@ -903,22 +903,6 @@ void RWSplitSession::handleError(GWBUF* errmsgbuf,
can_continue = true;
send_readonly_error(m_client);
}
if (!can_continue)
{
if (!backend->is_master() && !backend->server()->master_err_is_logged)
{
MXS_ERROR("Server %s (%s) lost the master status while waiting"
" for a result. Client sessions will be closed.",
backend->name(),
backend->uri());
backend->server()->master_err_is_logged = true;
}
else
{
MXS_ERROR("Lost connection to the master server, closing session.");
}
}
}
if (session_trx_is_active(session))
@ -926,6 +910,22 @@ void RWSplitSession::handleError(GWBUF* errmsgbuf,
can_continue = start_trx_replay();
}
if (!can_continue)
{
if (!backend->is_master() && !backend->server()->master_err_is_logged)
{
MXS_ERROR("Server %s (%s) lost the master status while waiting"
" for a result. Client sessions will be closed.",
backend->name(),
backend->uri());
backend->server()->master_err_is_logged = true;
}
else
{
MXS_ERROR("Lost connection to the master server, closing session.");
}
}
backend->close();
}
else