Added log error or ss_dassert instead of silent returning
This commit is contained in:
@ -152,10 +152,21 @@ static int gw_read_backend_event(DCB *dcb) {
|
|||||||
CHK_SESSION(dcb->session);
|
CHK_SESSION(dcb->session);
|
||||||
if (dcb->session->client == NULL) {
|
if (dcb->session->client == NULL) {
|
||||||
dcb->state = DCB_STATE_DISCONNECTED;
|
dcb->state = DCB_STATE_DISCONNECTED;
|
||||||
|
skygw_log_write(
|
||||||
|
LOGFILE_ERROR,
|
||||||
|
"%lu [gw_read_backend_event] client dcb is NULL for backend dcb %d.",
|
||||||
|
pthread_self(),
|
||||||
|
dcb->fd);
|
||||||
|
dcb->state = DCB_STATE_DISCONNECTED;
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
client_protocol = SESSION_PROTOCOL(dcb->session, MySQLProtocol);
|
client_protocol = SESSION_PROTOCOL(dcb->session, MySQLProtocol);
|
||||||
} else {
|
} else {
|
||||||
|
skygw_log_write(
|
||||||
|
LOGFILE_ERROR,
|
||||||
|
"%lu [gw_read_backend_event] dcb->session is NULL for backend dcb %d.",
|
||||||
|
pthread_self(),
|
||||||
|
dcb->fd);
|
||||||
dcb->state = DCB_STATE_DISCONNECTED;
|
dcb->state = DCB_STATE_DISCONNECTED;
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -663,11 +663,18 @@ int gw_read_client_event(DCB* dcb) {
|
|||||||
(dcb->func).close(dcb);
|
(dcb->func).close(dcb);
|
||||||
} else {
|
} else {
|
||||||
/* Send a custom error as MySQL command reply */
|
/* Send a custom error as MySQL command reply */
|
||||||
mysql_send_custom_error(
|
if (dcb) {
|
||||||
dcb,
|
mysql_send_custom_error(
|
||||||
1,
|
dcb,
|
||||||
0,
|
1,
|
||||||
"Connection to backend lost");
|
0,
|
||||||
|
"Connection to backend lost");
|
||||||
|
} else {
|
||||||
|
skygw_log_write(
|
||||||
|
LOGFILE_ERROR,
|
||||||
|
"%lu [mysql_send_custom_error] client dcb is NULL.",
|
||||||
|
pthread_self());
|
||||||
|
}
|
||||||
protocol->state = MYSQL_IDLE;
|
protocol->state = MYSQL_IDLE;
|
||||||
}
|
}
|
||||||
rc = 1;
|
rc = 1;
|
||||||
|
@ -23,7 +23,7 @@
|
|||||||
* Date Who Description
|
* Date Who Description
|
||||||
* 17/06/2013 Massimiliano Pinto Common MySQL protocol routines
|
* 17/06/2013 Massimiliano Pinto Common MySQL protocol routines
|
||||||
* 02/06/2013 Massimiliano Pinto MySQL connect asynchronous phases
|
* 02/06/2013 Massimiliano Pinto MySQL connect asynchronous phases
|
||||||
* 04/09/2013 Massimiliano Pinto Added dcb NULL check in mysql_send_custom_error
|
* 04/09/2013 Massimiliano Pinto Added dcb NULL assert in mysql_send_custom_error
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -620,9 +620,7 @@ mysql_send_custom_error (DCB *dcb, int packet_number, int in_affected_rows, cons
|
|||||||
|
|
||||||
GWBUF *buf = NULL;
|
GWBUF *buf = NULL;
|
||||||
|
|
||||||
if (dcb == NULL) {
|
ss_dassert(dcb != NULL);
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
mysql_errno = 2003;
|
mysql_errno = 2003;
|
||||||
mysql_error_msg = "An errorr occurred ...";
|
mysql_error_msg = "An errorr occurred ...";
|
||||||
|
@ -523,8 +523,9 @@ clientReply(
|
|||||||
DCB *client = NULL;
|
DCB *client = NULL;
|
||||||
|
|
||||||
client = backend_dcb->session->client;
|
client = backend_dcb->session->client;
|
||||||
if (client) {
|
|
||||||
client->func.write(client, queue);
|
ss_dassert(client != NULL);
|
||||||
}
|
|
||||||
|
client->func.write(client, queue);
|
||||||
}
|
}
|
||||||
///
|
///
|
||||||
|
Reference in New Issue
Block a user