misc fix and remove all tail spaces

This commit is contained in:
Dapeng Huang
2018-01-22 22:00:27 +08:00
parent 1729d73b19
commit 73e5fd52fa
3 changed files with 70 additions and 70 deletions

View File

@ -353,7 +353,7 @@ typedef struct
int ignore_replies; /*< How many replies should be discarded */ int ignore_replies; /*< How many replies should be discarded */
GWBUF* stored_query; /*< Temporarily stored queries */ GWBUF* stored_query; /*< Temporarily stored queries */
bool collect_result; /*< Collect the next result set as one buffer */ bool collect_result; /*< Collect the next result set as one buffer */
uint32_t num_eof_packets; /*< Signal number to indicate is current packet is ok packet*/ uint32_t num_eof_packets; /*< Encountered eof packet number, used for check packet type */
#if defined(SS_DEBUG) #if defined(SS_DEBUG)
skygw_chk_t protocol_chk_tail; skygw_chk_t protocol_chk_tail;
#endif #endif

View File

@ -12,60 +12,60 @@ MySQLProtocol proto;
static const uint8_t resultset1[] = static const uint8_t resultset1[] =
{ {
/* BEGIN;*/ /* BEGIN;*/
0x29, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x03, 0x29, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x03,
0x40, 0x00, 0x00, 0x00, 0x20, 0x05, 0x09, 0x08, 0x40, 0x00, 0x00, 0x00, 0x20, 0x05, 0x09, 0x08,
0x54, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x54, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F,
0x04, 0x13, 0x12, 0x53, 0x54, 0x41, 0x52, 0x54, 0x04, 0x13, 0x12, 0x53, 0x54, 0x41, 0x52, 0x54,
0x20, 0x54, 0x52, 0x41, 0x4E, 0x53, 0x41, 0x43, 0x20, 0x54, 0x52, 0x41, 0x4E, 0x53, 0x41, 0x43,
0x54, 0x49, 0x4F, 0x4E, 0x3B, 0x54, 0x49, 0x4F, 0x4E, 0x3B,
/* COMMIT;*/ /* COMMIT;*/
0x17, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x17, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02,
0x40, 0x00, 0x00, 0x00, 0x0E, 0x05, 0x09, 0x08, 0x40, 0x00, 0x00, 0x00, 0x0E, 0x05, 0x09, 0x08,
0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F,
0x04, 0x01, 0x00, 0x04, 0x01, 0x00,
/* START TRANSACTION;*/ /* START TRANSACTION;*/
0x29, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x03, 0x29, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x03,
0x40, 0x00, 0x00, 0x00, 0x20, 0x05, 0x09, 0x08, 0x40, 0x00, 0x00, 0x00, 0x20, 0x05, 0x09, 0x08,
0x54, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x54, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F,
0x04, 0x13, 0x12, 0x53, 0x54, 0x41, 0x52, 0x54, 0x04, 0x13, 0x12, 0x53, 0x54, 0x41, 0x52, 0x54,
0x20, 0x54, 0x52, 0x41, 0x4E, 0x53, 0x41, 0x43, 0x20, 0x54, 0x52, 0x41, 0x4E, 0x53, 0x41, 0x43,
0x54, 0x49, 0x4F, 0x4E, 0x3B, 0x54, 0x49, 0x4F, 0x4E, 0x3B,
/* START TRANSACTION READ ONLY;*/ /* START TRANSACTION READ ONLY;*/
0x28, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x03, 0x28, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x03,
0x60, 0x00, 0x00, 0x00, 0x1F, 0x04, 0x1D, 0x1C, 0x60, 0x00, 0x00, 0x00, 0x1F, 0x04, 0x1D, 0x1C,
0x53, 0x54, 0x41, 0x52, 0x54, 0x20, 0x54, 0x52, 0x53, 0x54, 0x41, 0x52, 0x54, 0x20, 0x54, 0x52,
0x41, 0x4E, 0x53, 0x41, 0x43, 0x54, 0x49, 0x4F, 0x41, 0x4E, 0x53, 0x41, 0x43, 0x54, 0x49, 0x4F,
0x4E, 0x20, 0x52, 0x45, 0x41, 0x44, 0x20, 0x4F, 0x4E, 0x20, 0x52, 0x45, 0x41, 0x44, 0x20, 0x4F,
0x4E, 0x4C, 0x59, 0x3B, 0x4E, 0x4C, 0x59, 0x3B,
/* COMMIT;*/ /* COMMIT;*/
0x07, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x07, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* SET AUTOCOMMIT=0;*/ /* SET AUTOCOMMIT=0;*/
0x1D, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x1D, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,
0x40, 0x00, 0x00, 0x00, 0x14, 0x00, 0x0F, 0x0A, 0x40, 0x00, 0x00, 0x00, 0x14, 0x00, 0x0F, 0x0A,
0x61, 0x75, 0x74, 0x6F, 0x63, 0x6F, 0x6D, 0x6D, 0x61, 0x75, 0x74, 0x6F, 0x63, 0x6F, 0x6D, 0x6D,
0x69, 0x74, 0x03, 0x4F, 0x46, 0x46, 0x02, 0x01, 0x69, 0x74, 0x03, 0x4F, 0x46, 0x46, 0x02, 0x01,
0x31, 0x31,
/* INSERT INTO t1 VALUES(1);*/ /* INSERT INTO t1 VALUES(1);*/
0x14, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x01, 0x14, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x01,
0x40, 0x00, 0x00, 0x00, 0x0B, 0x05, 0x09, 0x08, 0x40, 0x00, 0x00, 0x00, 0x0B, 0x05, 0x09, 0x08,
0x49, 0x5F, 0x5F, 0x5F, 0x57, 0x5F, 0x5F, 0x5F, 0x49, 0x5F, 0x5F, 0x5F, 0x57, 0x5F, 0x5F, 0x5F,
/* COMMIT;*/ /* COMMIT;*/
0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,
0x40, 0x00, 0x00, 0x00, 0x0B, 0x05, 0x09, 0x08, 0x40, 0x00, 0x00, 0x00, 0x0B, 0x05, 0x09, 0x08,
0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F, 0x5F
}; };
#define PACKET_HDR_LEN 4 #define PACKET_HDR_LEN 4
#define PACKET_1_IDX 0 #define PACKET_1_IDX 0
#define PACKET_1_LEN (PACKET_HDR_LEN + 0x29) #define PACKET_1_LEN (PACKET_HDR_LEN + 0x29)
#define PACKET_2_IDX (PACKET_1_IDX + PACKET_1_LEN) #define PACKET_2_IDX (PACKET_1_IDX + PACKET_1_LEN)
#define PACKET_2_LEN (PACKET_HDR_LEN + 0x17) #define PACKET_2_LEN (PACKET_HDR_LEN + 0x17)
#define PACKET_3_IDX (PACKET_2_IDX + PACKET_2_LEN) #define PACKET_3_IDX (PACKET_2_IDX + PACKET_2_LEN)
#define PACKET_3_LEN (PACKET_HDR_LEN + 0x29) #define PACKET_3_LEN (PACKET_HDR_LEN + 0x29)
#define PACKET_4_IDX (PACKET_3_IDX + PACKET_3_LEN) #define PACKET_4_IDX (PACKET_3_IDX + PACKET_3_LEN)
#define PACKET_4_LEN (PACKET_HDR_LEN + 0x28) #define PACKET_4_LEN (PACKET_HDR_LEN + 0x28)
#define PACKET_5_IDX (PACKET_4_IDX + PACKET_4_LEN) #define PACKET_5_IDX (PACKET_4_IDX + PACKET_4_LEN)
#define PACKET_5_LEN (PACKET_HDR_LEN + 0x07) #define PACKET_5_LEN (PACKET_HDR_LEN + 0x07)
#define PACKET_6_IDX (PACKET_5_IDX + PACKET_5_LEN) #define PACKET_6_IDX (PACKET_5_IDX + PACKET_5_LEN)
@ -84,38 +84,38 @@ static const uint8_t resultset2[] =
* insert into t1 select seq from seq_0_to_20; * insert into t1 select seq from seq_0_to_20;
* select '' from t1; * select '' from t1;
**/ **/
0x1D, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x1D, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,
0x40, 0x00, 0x00, 0x00, 0x14, 0x00, 0x0F, 0x0A, 0x40, 0x00, 0x00, 0x00, 0x14, 0x00, 0x0F, 0x0A,
0x61, 0x75, 0x74, 0x6F, 0x63, 0x6F, 0x6D, 0x6D, 0x61, 0x75, 0x74, 0x6F, 0x63, 0x6F, 0x6D, 0x6D,
0x69, 0x74, 0x03, 0x4F, 0x46, 0x46, 0x02, 0x01, 0x69, 0x74, 0x03, 0x4F, 0x46, 0x46, 0x02, 0x01,
0x31, 0x07, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x31, 0x07, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x00, 0x01,
0x00, 0x15, 0x00, 0x21, 0x40, 0x00, 0x00, 0x27, 0x00, 0x15, 0x00, 0x21, 0x40, 0x00, 0x00, 0x27,
0x52, 0x65, 0x63, 0x6F, 0x72, 0x64, 0x73, 0x3A, 0x52, 0x65, 0x63, 0x6F, 0x72, 0x64, 0x73, 0x3A,
0x20, 0x32, 0x31, 0x20, 0x20, 0x44, 0x75, 0x70, 0x20, 0x32, 0x31, 0x20, 0x20, 0x44, 0x75, 0x70,
0x6C, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x3A, 0x6C, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x3A,
0x20, 0x30, 0x20, 0x20, 0x57, 0x61, 0x72, 0x6E, 0x20, 0x30, 0x20, 0x20, 0x57, 0x61, 0x72, 0x6E,
0x69, 0x6E, 0x67, 0x73, 0x3A, 0x20, 0x30, 0x0B, 0x69, 0x6E, 0x67, 0x73, 0x3A, 0x20, 0x30, 0x0B,
0x05, 0x09, 0x08, 0x49, 0x5F, 0x52, 0x5F, 0x57, 0x05, 0x09, 0x08, 0x49, 0x5F, 0x52, 0x5F, 0x57,
0x5F, 0x5F, 0x5F, 0x01, 0x00, 0x00, 0x01, 0x01, 0x5F, 0x5F, 0x5F, 0x01, 0x00, 0x00, 0x01, 0x01,
0x16, 0x00, 0x00, 0x02, 0x03, 0x64, 0x65, 0x66, 0x16, 0x00, 0x00, 0x02, 0x03, 0x64, 0x65, 0x66,
0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x21, 0x00,
0x00, 0x00, 0x00, 0x00, 0xFD, 0x01, 0x00, 0x27, 0x00, 0x00, 0x00, 0x00, 0xFD, 0x01, 0x00, 0x27,
0x00, 0x00, 0x05, 0x00, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x03, 0xFE, 0x00,
0x00, 0x21, 0x00, 0x01, 0x00, 0x00, 0x04, 0x00, 0x00, 0x21, 0x00, 0x01, 0x00, 0x00, 0x04, 0x00,
0x01, 0x00, 0x00, 0x05, 0x00, 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x05, 0x00, 0x01, 0x00, 0x00,
0x06, 0x00, 0x01, 0x00, 0x00, 0x07, 0x00, 0x01, 0x06, 0x00, 0x01, 0x00, 0x00, 0x07, 0x00, 0x01,
0x00, 0x00, 0x08, 0x00, 0x01, 0x00, 0x00, 0x09, 0x00, 0x00, 0x08, 0x00, 0x01, 0x00, 0x00, 0x09,
0x00, 0x01, 0x00, 0x00, 0x0A, 0x00, 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x0A, 0x00, 0x01, 0x00,
0x00, 0x0B, 0x00, 0x01, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x0B, 0x00, 0x01, 0x00, 0x00, 0x0C, 0x00,
0x01, 0x00, 0x00, 0x0D, 0x00, 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x0D, 0x00, 0x01, 0x00, 0x00,
0x0E, 0x00, 0x01, 0x00, 0x00, 0x0F, 0x00, 0x01, 0x0E, 0x00, 0x01, 0x00, 0x00, 0x0F, 0x00, 0x01,
0x00, 0x00, 0x10, 0x00, 0x01, 0x00, 0x00, 0x11, 0x00, 0x00, 0x10, 0x00, 0x01, 0x00, 0x00, 0x11,
0x00, 0x01, 0x00, 0x00, 0x12, 0x00, 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x12, 0x00, 0x01, 0x00,
0x00, 0x13, 0x00, 0x01, 0x00, 0x00, 0x14, 0x00, 0x00, 0x13, 0x00, 0x01, 0x00, 0x00, 0x14, 0x00,
0x01, 0x00, 0x00, 0x15, 0x00, 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x15, 0x00, 0x01, 0x00, 0x00,
0x16, 0x00, 0x01, 0x00, 0x00, 0x17, 0x00, 0x01, 0x16, 0x00, 0x01, 0x00, 0x00, 0x17, 0x00, 0x01,
0x00, 0x00, 0x18, 0x00, 0x05, 0x00, 0x00, 0x19, 0x00, 0x00, 0x18, 0x00, 0x05, 0x00, 0x00, 0x19,
0xFE, 0x00, 0x00, 0x21, 0x40 0xFE, 0x00, 0x00, 0x21, 0x40
}; };
@ -189,7 +189,7 @@ void test1()
//START TRANSACTION READ ONLY //START TRANSACTION READ ONLY
buffer = gwbuf_alloc_and_load(PACKET_4_LEN, resultset1+PACKET_4_IDX); buffer = gwbuf_alloc_and_load(PACKET_4_LEN, resultset1+PACKET_4_IDX);
mxs_mysql_get_session_track_info(buffer, &proto); mxs_mysql_get_session_track_info(buffer, &proto);
ss_dassert(strncmp(gwbuf_get_property(buffer, (char *)"trx_characteristics"), ss_dassert(strncmp(gwbuf_get_property(buffer, (char *)"trx_characteristics"),
"START TRANSACTION READ ONLY;", 28) == 0); "START TRANSACTION READ ONLY;", 28) == 0);
gwbuf_free(buffer); gwbuf_free(buffer);
//COMMIT //COMMIT

View File

@ -1786,7 +1786,7 @@ void mxs_mysql_parse_ok_packet(GWBUF *buff, size_t packet_offset, size_t packet_
mxs_leint_consume(&ptr); // Affected rows mxs_leint_consume(&ptr); // Affected rows
mxs_leint_consume(&ptr); // Last insert-id mxs_leint_consume(&ptr); // Last insert-id
uint16_t server_status = gw_mysql_get_byte2(ptr); uint16_t server_status = gw_mysql_get_byte2(ptr);
ptr += 2; // status ptr += 2; // status
ptr += 2; // number of warnings ptr += 2; // number of warnings
if (ptr < (local_buf + packet_len)) if (ptr < (local_buf + packet_len))
@ -1797,7 +1797,7 @@ void mxs_mysql_parse_ok_packet(GWBUF *buff, size_t packet_offset, size_t packet_
mxs_leint_consume(&ptr); // total SERVER_SESSION_STATE_CHANGED length mxs_leint_consume(&ptr); // total SERVER_SESSION_STATE_CHANGED length
while (ptr < (local_buf + packet_len)) while (ptr < (local_buf + packet_len))
{ {
enum_session_state_type type = enum_session_state_type type =
(enum enum_session_state_type)mxs_leint_consume(&ptr); (enum enum_session_state_type)mxs_leint_consume(&ptr);
#if defined(SS_DEBUG) #if defined(SS_DEBUG)
ss_dassert(type <= SESSION_TRACK_TRANSACTION_TYPE); ss_dassert(type <= SESSION_TRACK_TRANSACTION_TYPE);
@ -1816,8 +1816,8 @@ void mxs_mysql_parse_ok_packet(GWBUF *buff, size_t packet_offset, size_t packet_
MXS_FREE(var_value); MXS_FREE(var_value);
break; break;
case SESSION_TRACK_SYSTEM_VARIABLES: case SESSION_TRACK_SYSTEM_VARIABLES:
mxs_leint_consume(&ptr); //lenth mxs_leint_consume(&ptr); //lenth
// system variables like autocommit, schema, charset ... // system variables like autocommit, schema, charset ...
var_name = mxs_lestr_consume_dup(&ptr); var_name = mxs_lestr_consume_dup(&ptr);
var_value = mxs_lestr_consume_dup(&ptr); var_value = mxs_lestr_consume_dup(&ptr);
gwbuf_add_property(buff, var_name, var_value); gwbuf_add_property(buff, var_name, var_value);
@ -1851,19 +1851,19 @@ void mxs_mysql_get_session_track_info(GWBUF *buff, MySQLProtocol *proto)
{ {
size_t offset = 0; size_t offset = 0;
uint8_t header_and_command[MYSQL_HEADER_LEN+1]; uint8_t header_and_command[MYSQL_HEADER_LEN+1];
if (proto->server_capabilities & GW_MYSQL_CAPABILITIES_SESSION_TRACK) if (proto->server_capabilities&GW_MYSQL_CAPABILITIES_SESSION_TRACK)
{ {
while (gwbuf_copy_data(buff, offset, MYSQL_HEADER_LEN+1, header_and_command) == (MYSQL_HEADER_LEN+1)) while (gwbuf_copy_data(buff, offset, MYSQL_HEADER_LEN+1, header_and_command) == (MYSQL_HEADER_LEN+1))
{ {
size_t packet_len = gw_mysql_get_byte3(header_and_command); size_t packet_len = gw_mysql_get_byte3(header_and_command);
uint8_t cmd = header_and_command[MYSQL_COM_OFFSET]; uint8_t cmd = header_and_command[MYSQL_COM_OFFSET];
if (packet_len > MYSQL_OK_PACKET_MIN_LEN && if (packet_len > MYSQL_OK_PACKET_MIN_LEN &&
cmd == MYSQL_REPLY_OK && cmd == MYSQL_REPLY_OK &&
(proto->num_eof_packets % 2) == 0) (proto->num_eof_packets % 2) == 0)
{ {
buff->gwbuf_type |= GWBUF_TYPE_REPLY_OK; buff->gwbuf_type |= GWBUF_TYPE_REPLY_OK;
mxs_mysql_parse_ok_packet(buff, offset, packet_len); mxs_mysql_parse_ok_packet(buff, offset, packet_len + MYSQL_HEADER_LEN);
} }
if ((proto->current_command == MXS_COM_QUERY || if ((proto->current_command == MXS_COM_QUERY ||