Merge branch '2.3' into 2.4

This commit is contained in:
Markus Mäkelä 2019-12-20 11:44:11 +02:00
commit 5fe97808e3
No known key found for this signature in database
GPG Key ID: 72D48FCE664F7B19
3 changed files with 15 additions and 7 deletions

View File

@ -25,11 +25,7 @@ void query_thread(TestConnections& test, int thread_id)
"Error opening conn to %s:%u, thread num is %d, iteration %ld, error is: %s\n",
host, port, thread_id, i, mysql_error(conn));
if (conn && mysql_errno(conn) == 0)
{
test.try_query(conn, "USE test");
mysql_close(conn);
}
mysql_close(conn);
};
// Keep running the test until we exhaust all available ports

View File

@ -2878,7 +2878,9 @@ public:
{
mxb_assert(m_dcb->owner == RoutingWorker::get_current());
m_dcb->fakeq = m_buffer;
m_dcb->is_fake_event = true;
dcb_handler(m_dcb, m_ev);
m_dcb->is_fake_event = true;
}
else
{

View File

@ -1418,10 +1418,20 @@ static int gw_backend_hangup(DCB* dcb)
static int gw_backend_close(DCB* dcb)
{
mxb_assert(dcb->session || dcb->persistentstart);
MySQLProtocol* proto = (MySQLProtocol*)dcb->protocol;
if (proto->protocol_auth_state == MXS_AUTH_STATE_INIT
|| proto->protocol_auth_state == MXS_AUTH_STATE_PENDING_CONNECT
|| proto->protocol_auth_state == MXS_AUTH_STATE_CONNECTED)
{
MYSQL_session client;
gw_get_shared_session_auth_info(dcb->session->client_dcb, &client);
memset(proto->scramble, 0, sizeof(proto->scramble));
dcb_write(dcb, gw_generate_auth_response(&client, proto, false, false, 0));
}
/** Send COM_QUIT to the backend being closed */
GWBUF* quitbuf = mysql_create_com_quit(NULL, 0);
mysql_send_com_quit(dcb, 0, quitbuf);
dcb_write(dcb, mysql_create_com_quit(NULL, 0));
/** Free protocol data */
mysql_protocol_done(dcb);