Commit 269f0a68 authored by Sergei Golubchik's avatar Sergei Golubchik

MDEV-6619 SHOW PROCESSLIST returns empty result set after KILL QUERY

don't send an OK packet if the SHOW PROCESSLIST was killed
parent 3d945236
connect con1,localhost,root,,;
SHOW PROCESSLIST;
Id User Host db Command Time State Info Progress
# root # test Sleep # # NULL 0.000
# root # test Query # # SHOW PROCESSLIST 0.000
connection default;
KILL QUERY con_id;
connection con1;
SHOW PROCESSLIST;
ERROR 70100: Query execution was interrupted
SHOW PROCESSLIST;
Id User Host db Command Time State Info Progress
# root # test Sleep # # NULL 0.000
# root # test Query # # SHOW PROCESSLIST 0.000
#
# MDEV-6619 SHOW PROCESSLIST returns empty result set after KILL QUERY
#
--source include/not_embedded.inc
--enable_connect_log
--connect (con1,localhost,root,,)
--let $con_id = `SELECT CONNECTION_ID()`
--replace_column 1 # 3 # 6 # 7 #
SHOW PROCESSLIST;
--connection default
--replace_result $con_id con_id
eval KILL QUERY $con_id;
--connection con1
--error ER_QUERY_INTERRUPTED
SHOW PROCESSLIST;
--replace_column 1 # 3 # 6 # 7 #
SHOW PROCESSLIST;
......@@ -2178,9 +2178,10 @@ void mysqld_list_processes(THD *thd,const char *user, bool verbose)
Protocol::SEND_NUM_ROWS | Protocol::SEND_EOF))
DBUG_VOID_RETURN;
if (thd->killed)
DBUG_VOID_RETURN;
mysql_mutex_lock(&LOCK_thread_count); // For unlink from list
if (!thd->killed)
{
I_List_iterator<THD> it(threads);
THD *tmp;
while ((tmp=it++))
......@@ -2250,7 +2251,6 @@ void mysqld_list_processes(THD *thd,const char *user, bool verbose)
thread_infos.append(thd_info);
}
}
}
mysql_mutex_unlock(&LOCK_thread_count);
thread_info *thd_info;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment