diff options
author | Oleksandr Byelkin <sanja@mariadb.com> | 2016-10-12 18:36:22 +0200 |
---|---|---|
committer | Oleksandr Byelkin <sanja@mariadb.com> | 2016-12-29 18:24:12 +0100 |
commit | f583e86c0c805e7d3bace4152cf2202ede2466a6 (patch) | |
tree | 0e87f1e0a89dc253a902ad696fb0bb83070a16b5 /sql/sql_parse.cc | |
parent | f2fe65106f731df48072a16eea3cda0a903d7fe5 (diff) | |
download | mariadb-git-10.2-MDEV-10340.tar.gz |
MDEV-10340: support COM_RESET_CONNECTION10.2-MDEV-10340
draft to check with client
Diffstat (limited to 'sql/sql_parse.cc')
-rw-r--r-- | sql/sql_parse.cc | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/sql/sql_parse.cc b/sql/sql_parse.cc index 06387c2b894..49c87b5a065 100644 --- a/sql/sql_parse.cc +++ b/sql/sql_parse.cc @@ -171,8 +171,8 @@ const LEX_STRING command_name[257]={ { C_STRING_WITH_LEN("Set option") }, //27 { C_STRING_WITH_LEN("Fetch") }, //28 { C_STRING_WITH_LEN("Daemon") }, //29 - { 0, 0 }, //30 - { 0, 0 }, //31 + { C_STRING_WITH_LEN("Unimpl get tid") }, //30 + { C_STRING_WITH_LEN("Reset connection") },//31 { 0, 0 }, //32 { 0, 0 }, //33 { 0, 0 }, //34 @@ -524,6 +524,7 @@ void init_update_queries(void) server_command_flags[COM_STMT_EXECUTE]= CF_SKIP_WSREP_CHECK; server_command_flags[COM_STMT_SEND_LONG_DATA]= CF_SKIP_WSREP_CHECK; server_command_flags[COM_MULTI]= CF_SKIP_WSREP_CHECK | CF_NO_COM_MULTI; + server_command_flags[CF_NO_COM_MULTI]= CF_NO_COM_MULTI; /* Initialize the sql command flags array. */ memset(sql_command_flags, 0, sizeof(sql_command_flags)); @@ -1670,6 +1671,14 @@ bool dispatch_command(enum enum_server_command command, THD *thd, break; } #endif + case COM_RESET_CONNECTION: + { + thd->status_var.com_other++; + thd->change_user(); + thd->clear_error(); // if errors from rollback + my_ok(thd, 0, 0, 0); + break; + } case COM_CHANGE_USER: { int auth_rc; @@ -2306,6 +2315,7 @@ com_multi_end: case COM_TIME: // Impossible from client case COM_DELAYED_INSERT: case COM_END: + case COM_UNIMPLEMENTED: default: my_message(ER_UNKNOWN_COM_ERROR, ER_THD(thd, ER_UNKNOWN_COM_ERROR), MYF(0)); |