mirror of
				https://github.com/MariaDB/server.git
				synced 2025-11-04 12:56:14 +01:00 
			
		
		
		
	Problem was that a parallel open of a table, overwrote info->state that was in used by repair. Fixed by changing _ma_tmp_disable_logging_for_table() to use a new state buffer state.no_logging to store the temporary state. Other things: - Use original number of rows when retrying repair to get rid of a potential warning "Number of rows changed from X to Y" - Changed maria_commit() to make it easier to merge with 10.4 - If table is not locked (like with show commands), use the global number of rows as the local number may not be up to date. (Minor not critical fix) - Added some missing DBUG_RETURN
		
			
				
	
	
		
			28 lines
		
	
	
	
		
			626 B
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
	
		
			626 B
		
	
	
	
		
			Text
		
	
	
	
	
	
#
 | 
						|
# MDEV-15797 Assertion `thd->killed != 0' failed in ha_maria::enable_indexes
 | 
						|
#
 | 
						|
 | 
						|
CREATE TABLE t1 (a INT, b CHAR(12), c INT, FULLTEXT KEY(b), KEY (c)) ENGINE=Aria;
 | 
						|
CREATE TABLE t2 (a INT, b CHAR(12), c INT) ENGINE=Aria;
 | 
						|
INSERT INTO t2 VALUES (1,'foo',8), (2,'bar',9);
 | 
						|
 | 
						|
--connect (con1,localhost,root,,test)
 | 
						|
--send
 | 
						|
  INSERT INTO t1 SELECT * FROM t2;
 | 
						|
--connection default
 | 
						|
select 1;
 | 
						|
select 1;
 | 
						|
select 1;
 | 
						|
select 1;
 | 
						|
select 1;
 | 
						|
select 1;
 | 
						|
select 1;
 | 
						|
--error ER_NO_SUCH_TABLE
 | 
						|
SELECT * FROM t1 WHERE a = ( SELECT 1 FROM non_existing_table2 );
 | 
						|
--connection con1
 | 
						|
--reap
 | 
						|
 
 | 
						|
# Cleanup
 | 
						|
--disconnect con1
 | 
						|
--connection default
 | 
						|
DROP TABLE t1, t2;
 |