mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-30 04:26:45 +03:00 
			
		
		
		
	 bd8f81f470
			
		
	
	bd8f81f470
	
	
	
		
			
			SHOW CREATE TABLE fails Underlying table names, that merge engine fails to open were not reported. With this fix CHECK TABLE issued against merge table reports all underlying table names that it fails to open. Other statements are unaffected, that is underlying table names are not included into error message. This fix doesn't solve SHOW CREATE TABLE issue.
		
			
				
	
	
		
			170 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			170 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| drop table if exists t1, t2;
 | |
| create table t1 (
 | |
| a int not null auto_increment,
 | |
| b char(16) not null,
 | |
| primary key (a),
 | |
| key (b)
 | |
| );
 | |
| create table t2(
 | |
| a int not null auto_increment,
 | |
| b char(16) not null,
 | |
| primary key (a),
 | |
| key (b)
 | |
| );
 | |
| insert into t1(b) values 
 | |
| ('test0'),
 | |
| ('test1'),
 | |
| ('test2'),
 | |
| ('test3'),
 | |
| ('test4'),
 | |
| ('test5'),
 | |
| ('test6'),
 | |
| ('test7');
 | |
| insert into t2(b) select b from t1;
 | |
| insert into t1(b) select b from t2;
 | |
| insert into t2(b) select b from t1;
 | |
| insert into t1(b) select b from t2;
 | |
| insert into t2(b) select b from t1;
 | |
| insert into t1(b) select b from t2;
 | |
| insert into t2(b) select b from t1;
 | |
| insert into t1(b) select b from t2;
 | |
| insert into t2(b) select b from t1;
 | |
| insert into t1(b) select b from t2;
 | |
| insert into t2(b) select b from t1;
 | |
| insert into t1(b) select b from t2;
 | |
| insert into t2(b) select b from t1;
 | |
| insert into t1(b) select b from t2;
 | |
| insert into t2(b) select b from t1;
 | |
| insert into t1(b) select b from t2;
 | |
| insert into t2(b) select b from t1;
 | |
| insert into t1(b) select b from t2;
 | |
| select count(*) from t1;
 | |
| count(*)
 | |
| 33448
 | |
| select count(*) from t2;
 | |
| count(*)
 | |
| 20672
 | |
| flush tables;
 | |
| flush status;
 | |
| show status like "key_read%";
 | |
| Variable_name	Value
 | |
| Key_read_requests	0
 | |
| Key_reads	0
 | |
| select count(*) from t1 where b = 'test1';
 | |
| count(*)
 | |
| 4181
 | |
| show status like "key_read%";
 | |
| Variable_name	Value
 | |
| Key_read_requests	294
 | |
| Key_reads	60
 | |
| select count(*) from t1 where b = 'test1';
 | |
| count(*)
 | |
| 4181
 | |
| show status like "key_read%";
 | |
| Variable_name	Value
 | |
| Key_read_requests	588
 | |
| Key_reads	60
 | |
| flush tables;
 | |
| flush status;
 | |
| select @@preload_buffer_size;
 | |
| @@preload_buffer_size
 | |
| 32768
 | |
| load index into cache t1;
 | |
| Table	Op	Msg_type	Msg_text
 | |
| test.t1	preload_keys	status	OK
 | |
| show status like "key_read%";
 | |
| Variable_name	Value
 | |
| Key_read_requests	774
 | |
| Key_reads	774
 | |
| select count(*) from t1 where b = 'test1';
 | |
| count(*)
 | |
| 4181
 | |
| show status like "key_read%";
 | |
| Variable_name	Value
 | |
| Key_read_requests	1068
 | |
| Key_reads	774
 | |
| flush tables;
 | |
| flush status;
 | |
| show status like "key_read%";
 | |
| Variable_name	Value
 | |
| Key_read_requests	0
 | |
| Key_reads	0
 | |
| set session preload_buffer_size=256*1024;
 | |
| select @@preload_buffer_size;
 | |
| @@preload_buffer_size
 | |
| 262144
 | |
| load index into cache t1 ignore leaves;
 | |
| Table	Op	Msg_type	Msg_text
 | |
| test.t1	preload_keys	status	OK
 | |
| show status like "key_read%";
 | |
| Variable_name	Value
 | |
| Key_read_requests	17
 | |
| Key_reads	17
 | |
| select count(*) from t1 where b = 'test1';
 | |
| count(*)
 | |
| 4181
 | |
| show status like "key_read%";
 | |
| Variable_name	Value
 | |
| Key_read_requests	311
 | |
| Key_reads	75
 | |
| flush tables;
 | |
| flush status;
 | |
| show status like "key_read%";
 | |
| Variable_name	Value
 | |
| Key_read_requests	0
 | |
| Key_reads	0
 | |
| set session preload_buffer_size=1*1024;
 | |
| select @@preload_buffer_size;
 | |
| @@preload_buffer_size
 | |
| 1024
 | |
| load index into cache t1, t2 key (primary,b) ignore leaves;
 | |
| Table	Op	Msg_type	Msg_text
 | |
| test.t1	preload_keys	status	OK
 | |
| test.t2	preload_keys	status	OK
 | |
| show status like "key_read%";
 | |
| Variable_name	Value
 | |
| Key_read_requests	785
 | |
| Key_reads	785
 | |
| select count(*) from t1 where b = 'test1';
 | |
| count(*)
 | |
| 4181
 | |
| select count(*) from t2 where b = 'test1';
 | |
| count(*)
 | |
| 2584
 | |
| show status like "key_read%";
 | |
| Variable_name	Value
 | |
| Key_read_requests	1266
 | |
| Key_reads	821
 | |
| flush tables;
 | |
| flush status;
 | |
| show status like "key_read%";
 | |
| Variable_name	Value
 | |
| Key_read_requests	0
 | |
| Key_reads	0
 | |
| load index into cache t3, t2 key (primary,b) ;
 | |
| Table	Op	Msg_type	Msg_text
 | |
| test.t3	preload_keys	Error	Table 'test.t3' doesn't exist
 | |
| test.t3	preload_keys	error	Corrupt
 | |
| test.t2	preload_keys	status	OK
 | |
| show status like "key_read%";
 | |
| Variable_name	Value
 | |
| Key_read_requests	478
 | |
| Key_reads	478
 | |
| flush tables;
 | |
| flush status;
 | |
| show status like "key_read%";
 | |
| Variable_name	Value
 | |
| Key_read_requests	0
 | |
| Key_reads	0
 | |
| load index into cache t3 key (b), t2 key (c) ;
 | |
| Table	Op	Msg_type	Msg_text
 | |
| test.t3	preload_keys	Error	Table 'test.t3' doesn't exist
 | |
| test.t3	preload_keys	error	Corrupt
 | |
| test.t2	preload_keys	Error	Key 'c' doesn't exist in table 't2'
 | |
| test.t2	preload_keys	status	Operation failed
 | |
| show status like "key_read%";
 | |
| Variable_name	Value
 | |
| Key_read_requests	0
 | |
| Key_reads	0
 | |
| drop table t1, t2;
 |