Merge branch '2.3' into develop

This commit is contained in:
Johan Wikman
2019-01-10 12:43:46 +02:00
2 changed files with 6 additions and 2 deletions

View File

@ -5,7 +5,7 @@
set(MAXSCALE_VERSION_MAJOR "2" CACHE STRING "Major version") set(MAXSCALE_VERSION_MAJOR "2" CACHE STRING "Major version")
set(MAXSCALE_VERSION_MINOR "2" CACHE STRING "Minor version") set(MAXSCALE_VERSION_MINOR "2" CACHE STRING "Minor version")
set(MAXSCALE_VERSION_PATCH "19" CACHE STRING "Patch version") set(MAXSCALE_VERSION_PATCH "20" CACHE STRING "Patch version")
# This should only be incremented if a package is rebuilt # This should only be incremented if a package is rebuilt
set(MAXSCALE_BUILD_NUMBER 1 CACHE STRING "Release number") set(MAXSCALE_BUILD_NUMBER 1 CACHE STRING "Release number")

View File

@ -875,6 +875,7 @@ void RWSplitSession::handleError(GWBUF* errmsgbuf,
{ {
case ERRACT_NEW_CONNECTION: case ERRACT_NEW_CONNECTION:
{ {
std::string errmsg;
bool can_continue = false; bool can_continue = false;
if (m_current_master && m_current_master->in_use() && m_current_master == backend) if (m_current_master && m_current_master->in_use() && m_current_master == backend)
@ -894,6 +895,7 @@ void RWSplitSession::handleError(GWBUF* errmsgbuf,
* can't be sure whether it was executed or not. In this * can't be sure whether it was executed or not. In this
* case the safest thing to do is to close the client * case the safest thing to do is to close the client
* connection. */ * connection. */
errmsg += " Lost connection to master server while connection was idle.";
if (m_config.master_failure_mode != RW_FAIL_INSTANTLY) if (m_config.master_failure_mode != RW_FAIL_INSTANTLY)
{ {
can_continue = true; can_continue = true;
@ -904,6 +906,7 @@ void RWSplitSession::handleError(GWBUF* errmsgbuf,
// We were expecting a response but we aren't going to get one // We were expecting a response but we aren't going to get one
mxb_assert(m_expected_responses > 0); mxb_assert(m_expected_responses > 0);
m_expected_responses--; m_expected_responses--;
errmsg += " Lost connection to master server while waiting for a result.";
if (can_retry_query()) if (can_retry_query())
{ {
@ -923,6 +926,7 @@ void RWSplitSession::handleError(GWBUF* errmsgbuf,
if (session_trx_is_active(session) && m_otrx_state == OTRX_INACTIVE) if (session_trx_is_active(session) && m_otrx_state == OTRX_INACTIVE)
{ {
can_continue = start_trx_replay(); can_continue = start_trx_replay();
errmsg += " A transaction is active and cannot be replayed.";
} }
if (!can_continue) if (!can_continue)
@ -937,7 +941,7 @@ void RWSplitSession::handleError(GWBUF* errmsgbuf,
} }
else else
{ {
MXS_ERROR("Lost connection to the master server, closing session."); MXS_ERROR("Lost connection to the master server, closing session.%s", errmsg.c_str());
} }
} }