From 925670ae2f4912bcf377a7e5bd514ea823371aa2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Markus=20M=C3=A4kel=C3=A4?= Date: Fri, 23 Nov 2018 13:17:24 +0200 Subject: [PATCH] Fix false master failure log message The message would be logged even if the session continues. --- .../routing/readwritesplit/rwsplitsession.cc | 32 +++++++++---------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/server/modules/routing/readwritesplit/rwsplitsession.cc b/server/modules/routing/readwritesplit/rwsplitsession.cc index ae86915b9..f2aa9a908 100644 --- a/server/modules/routing/readwritesplit/rwsplitsession.cc +++ b/server/modules/routing/readwritesplit/rwsplitsession.cc @@ -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