You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
129 lines
4.2 KiB
129 lines
4.2 KiB
SET DEBUG_SYNC = 'RESET';
|
|
DROP TABLE IF EXISTS t1, t2, t3;
|
|
DROP FUNCTION IF EXISTS MY_KILL;
|
|
CREATE FUNCTION MY_KILL(tid INT) RETURNS INT
|
|
BEGIN
|
|
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION BEGIN END;
|
|
KILL tid;
|
|
RETURN (SELECT COUNT(*) = 0 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE ID = tid);
|
|
END|
|
|
SET DEBUG_SYNC= 'thread_end SIGNAL con1_end';
|
|
SET DEBUG_SYNC= 'before_do_command_net_read SIGNAL con1_read';
|
|
SET DEBUG_SYNC='now WAIT_FOR con1_read';
|
|
SET DEBUG_SYNC= 'now WAIT_FOR con1_end';
|
|
SET DEBUG_SYNC = 'RESET';
|
|
SELECT 1;
|
|
Got one of the listed errors
|
|
SELECT 1;
|
|
1
|
|
1
|
|
SELECT @id != CONNECTION_ID();
|
|
@id != CONNECTION_ID()
|
|
1
|
|
SELECT 4;
|
|
4
|
|
4
|
|
KILL (SELECT COUNT(*) FROM mysql.user);
|
|
ERROR 42000: This version of MySQL doesn't yet support 'Usage of subqueries or stored function calls as part of this statement'
|
|
SET DEBUG_SYNC= 'thread_end SIGNAL con1_end';
|
|
SET DEBUG_SYNC= 'before_do_command_net_read SIGNAL con1_read WAIT_FOR kill';
|
|
SET DEBUG_SYNC= 'now WAIT_FOR con1_read';
|
|
SET DEBUG_SYNC= 'now WAIT_FOR con1_end';
|
|
SET DEBUG_SYNC = 'RESET';
|
|
SELECT 1;
|
|
Got one of the listed errors
|
|
SELECT 1;
|
|
1
|
|
1
|
|
SELECT @id != CONNECTION_ID();
|
|
@id != CONNECTION_ID()
|
|
1
|
|
SELECT 4;
|
|
4
|
|
4
|
|
CREATE TABLE t1 (id INT PRIMARY KEY AUTO_INCREMENT);
|
|
CREATE TABLE t2 (id INT UNSIGNED NOT NULL);
|
|
INSERT INTO t1 VALUES
|
|
(0),(0),(0),(0),(0),(0),(0),(0), (0),(0),(0),(0),(0),(0),(0),(0),
|
|
(0),(0),(0),(0),(0),(0),(0),(0), (0),(0),(0),(0),(0),(0),(0),(0),
|
|
(0),(0),(0),(0),(0),(0),(0),(0), (0),(0),(0),(0),(0),(0),(0),(0),
|
|
(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;
|
|
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 /*+ NO_HASH_JOIN(a,b,c,d) */ 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);
|
|
SET DEBUG_SYNC= 'now WAIT_FOR in_sync';
|
|
KILL @id;
|
|
SET DEBUG_SYNC= 'now WAIT_FOR con1_end';
|
|
Got one of the listed errors
|
|
SELECT 1;
|
|
1
|
|
1
|
|
SET DEBUG_SYNC = 'RESET';
|
|
DROP TABLE t1, t2;
|
|
SET DEBUG_SYNC= 'before_acos_function SIGNAL in_sync WAIT_FOR kill';
|
|
SELECT ACOS(0);
|
|
SET DEBUG_SYNC= 'now WAIT_FOR in_sync';
|
|
KILL QUERY @id;
|
|
ACOS(0)
|
|
1.5707963267948966
|
|
SELECT 1;
|
|
1
|
|
1
|
|
SELECT @id = CONNECTION_ID();
|
|
@id = CONNECTION_ID()
|
|
1
|
|
SET DEBUG_SYNC = 'RESET';
|
|
SET DEBUG_SYNC= 'before_join_optimize SIGNAL in_sync WAIT_FOR continue';
|
|
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;
|
|
SET DEBUG_SYNC= 'now WAIT_FOR in_sync';
|
|
KILL QUERY @id;
|
|
SET DEBUG_SYNC= 'now SIGNAL continue';
|
|
ERROR 70100: Query execution was interrupted
|
|
SET DEBUG_SYNC = 'RESET';
|
|
#
|
|
# Bug#19723: kill of active connection yields different error code
|
|
# depending on platform.
|
|
#
|
|
|
|
# Connection: con1.
|
|
SET DEBUG_SYNC= 'thread_end SIGNAL con1_end';
|
|
KILL @id;
|
|
ERROR 70100: Query execution was interrupted
|
|
SET DEBUG_SYNC= 'now WAIT_FOR con1_end';
|
|
# ER_SERVER_SHUTDOWN, CR_SERVER_GONE_ERROR, CR_SERVER_LOST,
|
|
# depending on the timing of close of the connection socket
|
|
SELECT 1;
|
|
Got one of the listed errors
|
|
SELECT 1;
|
|
1
|
|
1
|
|
SELECT @id != CONNECTION_ID();
|
|
@id != CONNECTION_ID()
|
|
1
|
|
SET DEBUG_SYNC = 'RESET';
|
|
SET DEBUG_SYNC = 'RESET';
|
|
DROP FUNCTION MY_KILL;
|
|
#
|
|
# Bug#12661349 assert in protocol::end_statement
|
|
#
|
|
# Note: This test case should be run with --ps-protocol
|
|
CREATE TABLE t1 (col1 INT);
|
|
connect con1, localhost, root;
|
|
SET DEBUG_SYNC= 'before_execute_sql_command SIGNAL waiting WAIT_FOR killed';
|
|
SELECT * FROM t1;
|
|
connection default;
|
|
SET DEBUG_SYNC= 'now WAIT_FOR waiting';
|
|
KILL QUERY <con1_id>;
|
|
SET DEBUG_SYNC= 'now SIGNAL killed';
|
|
connection con1;
|
|
ERROR 70100: Query execution was interrupted
|
|
disconnect con1;
|
|
connection default;
|
|
DROP TABLE t1;
|
|
SET DEBUG_SYNC= 'RESET';
|
|
|