Error messages from Admin's SQL specify they are from Admin

pull/2042/head
René Cannaò 7 years ago
parent 4280b84e6a
commit b9dd8a76e6

@ -3285,7 +3285,16 @@ __run_query:
SPA->vacuum_stats(false);
}
}
sess->SQLite3_to_MySQL(resultset, error, affected_rows, &sess->client_myds->myprot);
if (error == NULL) {
sess->SQLite3_to_MySQL(resultset, error, affected_rows, &sess->client_myds->myprot);
} else {
char *a = (char *)"ProxySQL Admin Error: ";
char *new_msg = (char *)malloc(strlen(error)+strlen(a)+1);
sprintf(new_msg, "%s%s", a, error);
sess->SQLite3_to_MySQL(resultset, new_msg, affected_rows, &sess->client_myds->myprot);
free(new_msg);
free(error);
}
delete resultset;
}
l_free(pkt->size-sizeof(mysql_hdr),query_no_space); // it is always freed here
@ -6925,7 +6934,11 @@ void ProxySQL_Admin::send_MySQL_ERR(MySQL_Protocol *myprot, char *msg) {
assert(myprot);
MySQL_Data_Stream *myds=myprot->get_myds();
myds->DSS=STATE_QUERY_SENT_DS;
myprot->generate_pkt_ERR(true,NULL,NULL,1,1045,(char *)"28000",msg);
char *a = (char *)"ProxySQL Admin Error: ";
char *new_msg = (char *)malloc(strlen(msg)+strlen(a)+1);
sprintf(new_msg, "%s%s", a, msg);
myprot->generate_pkt_ERR(true,NULL,NULL,1,1045,(char *)"28000",new_msg);
free(new_msg);
myds->DSS=STATE_SLEEP;
}

Loading…
Cancel
Save