58 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
		
		
			
		
	
	
			58 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
|  | --source include/have_debug.inc | ||
|  | 
 | ||
|  | # We disable this test in embedded mode because of BUG#43733 | ||
|  | --source include/not_embedded.inc | ||
|  | 
 | ||
|  | --echo # | ||
|  | --echo # BUG#40827 - Killing insert-select to MyISAM can cause table corruption | ||
|  | --echo # | ||
|  | 
 | ||
|  | CONNECT (insertConn, localhost, root,,); | ||
|  | 
 | ||
|  | CREATE TABLE `t1` ( | ||
|  | `id` BIGINT(20) , | ||
|  | `id1` BIGINT(20) AUTO_INCREMENT, | ||
|  |  KEY(id1), KEY(id) | ||
|  | ) ENGINE=MyISAM; | ||
|  | 
 | ||
|  | CREATE TABLE `t2` ( | ||
|  | `id` BIGINT(20) , | ||
|  | `id1` BIGINT(20) AUTO_INCREMENT, | ||
|  |  KEY (id1), KEY(id) | ||
|  | ) ENGINE=MyISAM; | ||
|  | 
 | ||
|  | INSERT INTO t2 (id) VALUES (123); | ||
|  | 
 | ||
|  | let $i = 10;  | ||
|  | while ($i) | ||
|  | { | ||
|  |   INSERT INTO t2 (id) SELECT id  FROM t2;  | ||
|  |   dec $i;  | ||
|  | } | ||
|  | 
 | ||
|  | --echo # Switch to insert Connection | ||
|  | CONNECTION insertConn; | ||
|  | SET SESSION debug='+d,wait_in_enable_indexes'; | ||
|  | --echo # Send insert data | ||
|  | SEND INSERT INTO t1(id) SELECT id  FROM t2;  | ||
|  | 
 | ||
|  | --echo # Switch to default Connection | ||
|  | CONNECTION default; | ||
|  | --echo # Wait for insert data to reach the debug point | ||
|  | 
 | ||
|  | let $wait_condition= | ||
|  |   SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.PROCESSLIST | ||
|  |   WHERE STATE = "wait_in_enable_indexes" AND  | ||
|  |   INFO = "INSERT INTO t1(id) SELECT id  FROM t2"; | ||
|  | --source include/wait_condition.inc | ||
|  | 
 | ||
|  | SELECT ID FROM INFORMATION_SCHEMA.PROCESSLIST | ||
|  | WHERE STATE = 'wait_in_enable_indexes' AND  | ||
|  | INFO = "INSERT INTO t1(id) SELECT id  FROM t2"  | ||
|  | INTO @thread_id; | ||
|  | 
 | ||
|  | KILL QUERY @thread_id; | ||
|  | CHECK TABLE t1;  | ||
|  | DROP TABLE t1,t2; | ||
|  | DISCONNECT insertConn; |