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.
28 lines
1.1 KiB
28 lines
1.1 KiB
5 months ago
|
#
|
||
|
# Bug#21966802: MAKE OPERATIONS ON DD TABLES IMMUNE TO KILL
|
||
|
#
|
||
|
# Create a new connection.
|
||
|
connect con1, localhost, root,,;
|
||
|
# Create a table and Alter it, but stop executing right before the
|
||
|
# object is stored persistently.
|
||
|
CREATE TABLE t1 (pk INTEGER PRIMARY KEY);
|
||
|
SET DEBUG_SYNC= 'before_storing_dd_object SIGNAL before_store WAIT_FOR cont';
|
||
|
ALTER TABLE t1 ADD fld1 INT, ALGORITHM=INPLACE;
|
||
|
connection default;
|
||
|
# From the default connection, get the thread id of the rename, and
|
||
|
# kill the query.
|
||
|
SET DEBUG_SYNC= 'now WAIT_FOR before_store';
|
||
|
SELECT ID FROM INFORMATION_SCHEMA.PROCESSLIST WHERE INFO LIKE "ALTER TABLE%" INTO @thread_id;
|
||
|
KILL QUERY @thread_id;
|
||
|
SET DEBUG_SYNC= 'now SIGNAL cont';
|
||
|
connection con1;
|
||
|
# Though KILL QUERY is executed when ALTER TABLE's THD is in the kill immune mode,
|
||
|
# killed status for THD is set only while exiting from the kill immune mode.
|
||
|
# Code checking THD::killed status outside kill immune mode reports an error.
|
||
|
ERROR 70100: Query execution was interrupted
|
||
|
connection default;
|
||
|
# Disconnect and cleanup.
|
||
|
DROP TABLE t1;
|
||
|
disconnect con1;
|
||
|
SET DEBUG_SYNC= 'RESET';
|