Merge branch 'develop' of github.com:skysql/MaxScale into develop
This commit is contained in:
commit
f84e2b0dae
@ -282,7 +282,8 @@ static int gw_read_backend_event(DCB *dcb) {
|
||||
} /* switch */
|
||||
}
|
||||
|
||||
if (backend_protocol->state == MYSQL_AUTH_FAILED) {
|
||||
if (backend_protocol->state == MYSQL_AUTH_FAILED)
|
||||
{
|
||||
/**
|
||||
* protocol state won't change anymore,
|
||||
* lock can be freed
|
||||
@ -326,14 +327,14 @@ static int gw_read_backend_event(DCB *dcb) {
|
||||
if (session->client->session == NULL)
|
||||
{
|
||||
rc = 1;
|
||||
goto return_with_lock;
|
||||
goto return_rc;
|
||||
}
|
||||
usleep(1);
|
||||
}
|
||||
|
||||
if (session->state == SESSION_STATE_STOPPING)
|
||||
{
|
||||
goto return_with_lock;
|
||||
goto return_rc;
|
||||
}
|
||||
spinlock_acquire(&session->ses_lock);
|
||||
session->state = SESSION_STATE_STOPPING;
|
||||
@ -584,7 +585,8 @@ gw_MySQLWrite_backend(DCB *dcb, GWBUF *queue)
|
||||
snprintf(str, len+1, "%s", startpoint);
|
||||
LOGIF(LE, (skygw_log_write_flush(
|
||||
LOGFILE_ERROR,
|
||||
"Error : Authentication to backend failed.")));
|
||||
"Error : Unable to write to backend due to "
|
||||
"authentication failure.")));
|
||||
/** Consume query buffer */
|
||||
while ((queue = gwbuf_consume(
|
||||
queue,
|
||||
|
@ -1015,16 +1015,16 @@ static int routeQuery(
|
||||
router_cli_ses->rses_id)));
|
||||
ss_dassert(QUERY_IS_TYPE(qtype, QUERY_TYPE_READ));
|
||||
|
||||
/** Lock router session */
|
||||
if (!rses_begin_locked_router_action(router_cli_ses))
|
||||
{
|
||||
goto return_ret;
|
||||
}
|
||||
|
||||
succp = get_dcb(&slave_dcb, router_cli_ses, BE_SLAVE);
|
||||
|
||||
if (succp)
|
||||
{
|
||||
/** Lock router session */
|
||||
if (!rses_begin_locked_router_action(router_cli_ses))
|
||||
{
|
||||
goto return_ret;
|
||||
}
|
||||
|
||||
{
|
||||
if ((ret = slave_dcb->func.write(slave_dcb, querybuf)) == 1)
|
||||
{
|
||||
atomic_add(&inst->stats.n_slave, 1);
|
||||
@ -1036,8 +1036,9 @@ static int routeQuery(
|
||||
"Error : Routing query \"%s\" failed.",
|
||||
querystr)));
|
||||
}
|
||||
rses_end_locked_router_action(router_cli_ses);
|
||||
}
|
||||
rses_end_locked_router_action(router_cli_ses);
|
||||
|
||||
ss_dassert(succp);
|
||||
goto return_ret;
|
||||
}
|
||||
@ -1061,6 +1062,11 @@ static int routeQuery(
|
||||
"routing to Master.")));
|
||||
}
|
||||
}
|
||||
/** Lock router session */
|
||||
if (!rses_begin_locked_router_action(router_cli_ses))
|
||||
{
|
||||
goto return_ret;
|
||||
}
|
||||
|
||||
if (master_dcb == NULL)
|
||||
{
|
||||
@ -1068,21 +1074,22 @@ static int routeQuery(
|
||||
}
|
||||
if (succp)
|
||||
{
|
||||
/** Lock router session */
|
||||
if (!rses_begin_locked_router_action(router_cli_ses))
|
||||
{
|
||||
goto return_ret;
|
||||
}
|
||||
|
||||
if ((ret = master_dcb->func.write(master_dcb, querybuf)) == 1)
|
||||
{
|
||||
atomic_add(&inst->stats.n_master, 1);
|
||||
}
|
||||
rses_end_locked_router_action(router_cli_ses);
|
||||
}
|
||||
}
|
||||
rses_end_locked_router_action(router_cli_ses);
|
||||
|
||||
ss_dassert(succp);
|
||||
ss_dassert(ret == 1);
|
||||
goto return_ret;
|
||||
|
||||
if (ret == 0)
|
||||
{
|
||||
LOGIF(LE, (skygw_log_write_flush(
|
||||
LOGFILE_ERROR,
|
||||
"Error : Routing to master failed.")));
|
||||
}
|
||||
}
|
||||
return_ret:
|
||||
if (plainsqlbuf != NULL)
|
||||
|
Loading…
x
Reference in New Issue
Block a user