diff options
author | Sergey Vojtovich <svoj@mariadb.org> | 2016-03-25 20:51:22 +0400 |
---|---|---|
committer | Sergey Vojtovich <svoj@mariadb.org> | 2016-03-31 10:11:16 +0400 |
commit | 282497dd6d1049b4fb963641504c2733752845a7 (patch) | |
tree | 7288d17c29fbbe9ac47ec51f6988fb954f59a361 /mysql-test/r/kill.result | |
parent | 5052e2479e873461bebfcedbc674bbaf57d3c968 (diff) | |
download | mariadb-git-282497dd6d1049b4fb963641504c2733752845a7.tar.gz |
MDEV-6720 - enable connection log in mysqltest by default
Diffstat (limited to 'mysql-test/r/kill.result')
-rw-r--r-- | mysql-test/r/kill.result | 148 |
1 files changed, 111 insertions, 37 deletions
diff --git a/mysql-test/r/kill.result b/mysql-test/r/kill.result index d40c4ee758c..0f01bf3f714 100644 --- a/mysql-test/r/kill.result +++ b/mysql-test/r/kill.result @@ -9,11 +9,18 @@ DECLARE CONTINUE HANDLER FOR SQLEXCEPTION BEGIN END; KILL tid; RETURN (SELECT COUNT(*) = 0 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE ID = tid); END| +connect con1, localhost, root,,; +connect con2, localhost, root,,; +connection con1; +connection con2; +connection con1; SET DEBUG_SYNC= 'thread_end SIGNAL con1_end'; SET DEBUG_SYNC= 'before_do_command_net_read SIGNAL con1_read'; +connection con2; SET DEBUG_SYNC='now WAIT_FOR con1_read'; SET DEBUG_SYNC= 'now WAIT_FOR con1_end'; SET DEBUG_SYNC = 'RESET'; +connection con1; SELECT 1; Got one of the listed errors SELECT 1; @@ -22,16 +29,23 @@ SELECT 1; SELECT @id != CONNECTION_ID(); @id != CONNECTION_ID() 1 +connection con2; SELECT 4; 4 4 +connection default; KILL (SELECT COUNT(*) FROM mysql.user); ERROR 42000: KILL does not support subqueries or stored functions. +connection con1; +connection con2; +connection con1; SET DEBUG_SYNC= 'thread_end SIGNAL con1_end'; SET DEBUG_SYNC= 'before_do_command_net_read SIGNAL con1_read WAIT_FOR kill'; +connection con2; SET DEBUG_SYNC= 'now WAIT_FOR con1_read'; SET DEBUG_SYNC= 'now WAIT_FOR con1_end'; SET DEBUG_SYNC = 'RESET'; +connection con1; SELECT 1; Got one of the listed errors SELECT 1; @@ -40,9 +54,11 @@ SELECT 1; SELECT @id != CONNECTION_ID(); @id != CONNECTION_ID() 1 +connection con2; SELECT 4; 4 4 +connection default; CREATE TABLE t1 (id INT PRIMARY KEY AUTO_INCREMENT); CREATE TABLE t2 (id INT UNSIGNED NOT NULL); INSERT INTO t1 VALUES @@ -52,25 +68,36 @@ INSERT INTO t1 VALUES (0),(0),(0),(0),(0),(0),(0),(0), (0),(0),(0),(0),(0),(0),(0),(0); INSERT t1 SELECT 0 FROM t1 AS a1, t1 AS a2 LIMIT 4032; INSERT INTO t2 SELECT id FROM t1; +connection con1; +connection con2; +connection con1; SET DEBUG_SYNC= 'thread_end SIGNAL con1_end'; SET DEBUG_SYNC= 'before_acos_function SIGNAL in_sync'; SELECT id FROM t1 WHERE id IN (SELECT DISTINCT a.id FROM t2 a, t2 b, t2 c, t2 d GROUP BY ACOS(1/a.id), b.id, c.id, d.id HAVING a.id BETWEEN 10 AND 20); +connection con2; SET DEBUG_SYNC= 'now WAIT_FOR in_sync'; KILL @id; SET DEBUG_SYNC= 'now WAIT_FOR con1_end'; +connection con1; Got one of the listed errors SELECT 1; 1 1 +connection default; SET DEBUG_SYNC = 'RESET'; DROP TABLE t1, t2; +connection con1; +connection con2; +connection con1; SET DEBUG_SYNC= 'before_acos_function SIGNAL in_sync WAIT_FOR kill'; SELECT ACOS(0); +connection con2; SET DEBUG_SYNC= 'now WAIT_FOR in_sync'; KILL QUERY @id; +connection con1; ACOS(0) 1.5707963267948966 SELECT 1; @@ -79,6 +106,7 @@ SELECT 1; SELECT @id = CONNECTION_ID(); @id = CONNECTION_ID() 1 +connection default; SET DEBUG_SYNC = 'RESET'; CREATE TABLE t1 (f1 INT); CREATE FUNCTION bug27563() RETURNS INT(11) @@ -89,40 +117,58 @@ DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET @a:= 'exception'; SET DEBUG_SYNC= 'now SIGNAL in_sync WAIT_FOR kill'; RETURN 1; END| +connection con1; +connection con2; +connection con1; INSERT INTO t1 VALUES (bug27563()); +connection con2; SET DEBUG_SYNC= 'now WAIT_FOR in_sync'; KILL QUERY @id; +connection con1; ERROR 70100: Query execution was interrupted SELECT * FROM t1; f1 +connection default; SET DEBUG_SYNC = 'RESET'; INSERT INTO t1 VALUES(0); +connection con1; UPDATE t1 SET f1= bug27563(); +connection con2; SET DEBUG_SYNC= 'now WAIT_FOR in_sync'; KILL QUERY @id; +connection con1; ERROR 70100: Query execution was interrupted SELECT * FROM t1; f1 0 +connection default; SET DEBUG_SYNC = 'RESET'; INSERT INTO t1 VALUES(1); +connection con1; DELETE FROM t1 WHERE bug27563() IS NULL; +connection con2; SET DEBUG_SYNC= 'now WAIT_FOR in_sync'; KILL QUERY @id; +connection con1; ERROR 70100: Query execution was interrupted SELECT * FROM t1; f1 0 1 +connection default; SET DEBUG_SYNC = 'RESET'; +connection con1; SELECT * FROM t1 WHERE f1= bug27563(); +connection con2; SET DEBUG_SYNC= 'now WAIT_FOR in_sync'; KILL QUERY @id; +connection con1; ERROR 70100: Query execution was interrupted SELECT * FROM t1; f1 0 1 +connection default; SET DEBUG_SYNC = 'RESET'; DROP FUNCTION bug27563; CREATE TABLE t2 (f2 INT); @@ -134,9 +180,12 @@ INSERT INTO t2 VALUES(0); SET DEBUG_SYNC= 'now SIGNAL in_sync WAIT_FOR kill'; INSERT INTO t2 VALUES(1); END| +connection con1; INSERT INTO t1 VALUES(2),(3); +connection con2; SET DEBUG_SYNC= 'now WAIT_FOR in_sync'; KILL QUERY @id; +connection con1; ERROR 70100: Query execution was interrupted SELECT * FROM t1; f1 @@ -145,26 +194,34 @@ f1 SELECT * FROM t2; f2 0 +connection default; SET DEBUG_SYNC = 'RESET'; DROP TABLE t1, t2; +connection con1; +connection con2; +connection con1; SET SESSION optimizer_search_depth=0; SET DEBUG_SYNC= 'before_join_optimize SIGNAL in_sync'; PREPARE stmt FROM 'EXPLAIN SELECT * FROM t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15,t16,t17,t18,t19,t20,t21,t22,t23,t24,t25,t26,t27,t28,t29,t30,t31,t32,t33,t34,t35,t36,t37,t38,t39,t40 WHERE a1=a2 AND a2=a3 AND a3=a4 AND a4=a5 AND a5=a6 AND a6=a7 AND a7=a8 AND a8=a9 AND a9=a10 AND a10=a11 AND a11=a12 AND a12=a13 AND a13=a14 AND a14=a15 AND a15=a16 AND a16=a17 AND a17=a18 AND a18=a19 AND a19=a20 AND a20=a21 AND a21=a22 AND a22=a23 AND a23=a24 AND a24=a25 AND a25=a26 AND a26=a27 AND a27=a28 AND a28=a29 AND a29=a30 AND a30=a31 AND a31=a32 AND a32=a33 AND a33=a34 AND a34=a35 AND a35=a36 AND a36=a37 AND a37=a38 AND a38=a39 AND a39=a40 '; EXECUTE stmt; +connection con2; SET DEBUG_SYNC= 'now WAIT_FOR in_sync'; KILL QUERY @id; +connection con1; ERROR 70100: Query execution was interrupted +connection default; SET DEBUG_SYNC = 'RESET'; # # Bug#19723: kill of active connection yields different error code # depending on platform. # - -# Connection: con1. +connection con1; SET DEBUG_SYNC= 'thread_end SIGNAL con1_end'; KILL @id; ERROR 70100: Connection was killed +connection con2; SET DEBUG_SYNC= 'now WAIT_FOR con1_end'; +connection con1; # ER_SERVER_SHUTDOWN, CR_SERVER_GONE_ERROR, CR_SERVER_LOST, # depending on the timing of close of the connection socket SELECT 1; @@ -175,6 +232,7 @@ SELECT 1; SELECT @id != CONNECTION_ID(); @id != CONNECTION_ID() 1 +connection default; SET DEBUG_SYNC = 'RESET'; # # Additional test for WL#3726 "DDL locking for all metadata objects" @@ -185,96 +243,99 @@ SET DEBUG_SYNC = 'RESET'; # drop tables if exists t1, t2, t3; create table t1 (i int primary key); +connect blocker, localhost, root, , ; +connect dml, localhost, root, , ; +connect ddl, localhost, root, , ; # Test for RENAME TABLE -# Switching to connection 'blocker' +connection blocker; lock table t1 read; -# Switching to connection 'ddl' +connection ddl; rename table t1 to t2; -# Switching to connection 'default' +connection default; kill query ID; -# Switching to connection 'ddl' +connection ddl; ERROR 70100: Query execution was interrupted # Test for DROP TABLE drop table t1; -# Switching to connection 'default' +connection default; kill query ID; -# Switching to connection 'ddl' +connection ddl; ERROR 70100: Query execution was interrupted # Test for CREATE TRIGGER create trigger t1_bi before insert on t1 for each row set @a:=1; -# Switching to connection 'default' +connection default; kill query ID; -# Switching to connection 'ddl' +connection ddl; ERROR 70100: Query execution was interrupted # # Tests for various kinds of ALTER TABLE # # Full-blown ALTER which should copy table alter table t1 add column j int; -# Switching to connection 'default' +connection default; kill query ID; -# Switching to connection 'ddl' +connection ddl; ERROR 70100: Query execution was interrupted # Two kinds of simple ALTER alter table t1 rename to t2; -# Switching to connection 'default' +connection default; kill query ID; -# Switching to connection 'ddl' +connection ddl; ERROR 70100: Query execution was interrupted alter table t1 disable keys; -# Switching to connection 'default' +connection default; kill query ID; -# Switching to connection 'ddl' +connection ddl; ERROR 70100: Query execution was interrupted # Fast ALTER alter table t1 alter column i set default 100; -# Switching to connection 'default' +connection default; kill query ID; -# Switching to connection 'ddl' +connection ddl; ERROR 70100: Query execution was interrupted # Special case which is triggered only for MERGE tables. -# Switching to connection 'blocker' +connection blocker; unlock tables; create table t2 (i int primary key) engine=merge union=(t1); lock tables t2 read; -# Switching to connection 'ddl' +connection ddl; alter table t2 alter column i set default 100; -# Switching to connection 'default' +connection default; kill query ID; -# Switching to connection 'ddl' +connection ddl; ERROR 70100: Query execution was interrupted # Test for DML waiting for meta-data lock -# Switching to connection 'blocker' +connection blocker; unlock tables; lock tables t1 read; -# Switching to connection 'ddl' +connection ddl; truncate table t1; -# Switching to connection 'dml' +connection dml; insert into t1 values (1); -# Switching to connection 'default' +connection default; kill query ID2; -# Switching to connection 'dml' +connection dml; ERROR 70100: Query execution was interrupted -# Switching to connection 'blocker' +connection blocker; unlock tables; -# Switching to connection 'ddl' +connection ddl; # Test for DML waiting for tables to be flushed -# Switching to connection 'blocker' +connection blocker; lock tables t1 read; -# Switching to connection 'ddl' +connection ddl; # Let us mark locked table t1 as old flush tables; -# Switching to connection 'dml' +connection dml; select * from t1; -# Switching to connection 'default' +connection default; kill query ID2; -# Switching to connection 'dml' +connection dml; ERROR 70100: Query execution was interrupted -# Switching to connection 'blocker' +connection blocker; unlock tables; -# Switching to connection 'ddl' +connection ddl; # Cleanup. -# Switching to connection 'default' +connection default; drop table t1; drop table t2; # @@ -282,6 +343,9 @@ drop table t2; # grant ALL on test.* to test@localhost; grant ALL on test.* to test2@localhost; +connect con3, localhost, test,,; +connect con4, localhost, test2,,; +connection default; kill hard query user test2@nohost; affected rows: 0 kill soft query user test@localhost; @@ -296,16 +360,21 @@ revoke all privileges on test.* from test@localhost; revoke all privileges on test.* from test2@localhost; drop user test@localhost; drop user test2@localhost; +connection con3; select 1; Got one of the listed errors +connection con4; select 1; Got one of the listed errors +connection default; # # MDEV-4911 - add KILL query id, and add query id information to # processlist # SELECT SLEEP(1000); +connection con1; KILL QUERY ID @id; +connection default; SLEEP(1000) 1 KILL QUERY ID 0; @@ -316,11 +385,16 @@ ERROR HY000: Unknown query id: 0 # CREATE USER u1@localhost; SELECT SLEEP(1000); +connection con1; +connect con5, localhost, u1,,; KILL QUERY ID ID; ERROR HY000: You are not owner of query ID +connection con1; KILL QUERY ID @id; +connection default; SLEEP(1000) 1 +disconnect con5; DROP USER u1@localhost; SET DEBUG_SYNC = 'RESET'; DROP FUNCTION MY_KILL; |