summaryrefslogtreecommitdiff
path: root/mysql-test/t/aborted_clients.test
diff options
context:
space:
mode:
authorVladislav Vaintroub <wlad@montyprogram.com>2012-05-03 02:47:06 +0200
committerVladislav Vaintroub <wlad@montyprogram.com>2012-05-03 02:47:06 +0200
commit550d6871a5eb93013435055e11a4fe3009490c82 (patch)
treefc9c5e7298f04b9413d7638a0cf320b92b0b9c65 /mysql-test/t/aborted_clients.test
parent4cae07968c3d112adc1d7c16b6baf923d9a039a5 (diff)
downloadmariadb-git-550d6871a5eb93013435055e11a4fe3009490c82.tar.gz
MDEV-246 - Aborted_clients incremented during ordinary connection close
The problem was increment of aborted_threads variable due to thd->killed which was set when threadpool connection was terminated . The fix is not to set thd->killed anymore, there is no real reason for doing it.. Added a test that checks that status variable aborted_clients does not grow for ordinary disconnects, and that successful KILL increments this variable.
Diffstat (limited to 'mysql-test/t/aborted_clients.test')
-rw-r--r--mysql-test/t/aborted_clients.test26
1 files changed, 26 insertions, 0 deletions
diff --git a/mysql-test/t/aborted_clients.test b/mysql-test/t/aborted_clients.test
new file mode 100644
index 00000000000..aa278554c8f
--- /dev/null
+++ b/mysql-test/t/aborted_clients.test
@@ -0,0 +1,26 @@
+# Test case for MDEV-246, lp:992983
+# Check that ordinary connect/disconnect does not increase aborted_clients
+# status variable, but KILL connection does
+
+-- source include/not_embedded.inc
+
+FLUSH STATUS;
+# Connect/Disconnect look that aborted_clients stays 0
+connect (con1,localhost,root,,);
+disconnect con1;
+connection default;
+# Check that there is 0 aborted clients so far
+SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME='aborted_clients';
+
+# Kill a connection, check that aborted_clients is incremented
+connect(con2,localhost,root,,);
+--disable_reconnect
+--error ER_CONNECTION_KILLED
+KILL CONNECTION_ID();
+disconnect con2;
+connection default;
+
+# aborted clients must be 1 now
+SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME='aborted_clients';
+FLUSH STATUS;
+