2003-06-12 14:26:50 +02:00
|
|
|
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;
|
2003-06-19 11:34:33 +02:00
|
|
|
show status like "key_read%";
|
2003-06-12 14:26:50 +02:00
|
|
|
Variable_name Value
|
|
|
|
Key_read_requests 0
|
|
|
|
Key_reads 0
|
|
|
|
select count(*) from t1 where b = 'test1';
|
|
|
|
count(*)
|
|
|
|
4181
|
2003-06-19 11:34:33 +02:00
|
|
|
show status like "key_read%";
|
2003-06-12 14:26:50 +02:00
|
|
|
Variable_name Value
|
2005-05-13 11:08:08 +02:00
|
|
|
Key_read_requests 294
|
|
|
|
Key_reads 60
|
2003-06-12 14:26:50 +02:00
|
|
|
select count(*) from t1 where b = 'test1';
|
|
|
|
count(*)
|
|
|
|
4181
|
2003-06-19 11:34:33 +02:00
|
|
|
show status like "key_read%";
|
2003-06-12 14:26:50 +02:00
|
|
|
Variable_name Value
|
2005-05-13 11:08:08 +02:00
|
|
|
Key_read_requests 588
|
|
|
|
Key_reads 60
|
2003-06-12 14:26:50 +02:00
|
|
|
flush tables;
|
|
|
|
flush status;
|
|
|
|
select @@preload_buffer_size;
|
|
|
|
@@preload_buffer_size
|
|
|
|
32768
|
2003-11-18 12:47:27 +01:00
|
|
|
load index into cache t1;
|
2003-06-12 14:26:50 +02:00
|
|
|
Table Op Msg_type Msg_text
|
|
|
|
test.t1 preload_keys status OK
|
2003-06-19 11:34:33 +02:00
|
|
|
show status like "key_read%";
|
2003-06-12 14:26:50 +02:00
|
|
|
Variable_name Value
|
2005-05-13 11:08:08 +02:00
|
|
|
Key_read_requests 774
|
|
|
|
Key_reads 774
|
2003-06-12 14:26:50 +02:00
|
|
|
select count(*) from t1 where b = 'test1';
|
|
|
|
count(*)
|
|
|
|
4181
|
2003-06-19 11:34:33 +02:00
|
|
|
show status like "key_read%";
|
2003-06-12 14:26:50 +02:00
|
|
|
Variable_name Value
|
2005-05-13 11:08:08 +02:00
|
|
|
Key_read_requests 1068
|
|
|
|
Key_reads 774
|
2003-06-12 14:26:50 +02:00
|
|
|
flush tables;
|
|
|
|
flush status;
|
2003-06-19 11:34:33 +02:00
|
|
|
show status like "key_read%";
|
2003-06-12 14:26:50 +02:00
|
|
|
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
|
2003-11-18 12:47:27 +01:00
|
|
|
load index into cache t1 ignore leaves;
|
2003-06-12 14:26:50 +02:00
|
|
|
Table Op Msg_type Msg_text
|
|
|
|
test.t1 preload_keys status OK
|
2003-06-19 11:34:33 +02:00
|
|
|
show status like "key_read%";
|
2003-06-12 14:26:50 +02:00
|
|
|
Variable_name Value
|
2005-05-13 11:08:08 +02:00
|
|
|
Key_read_requests 17
|
|
|
|
Key_reads 17
|
2003-06-12 14:26:50 +02:00
|
|
|
select count(*) from t1 where b = 'test1';
|
|
|
|
count(*)
|
|
|
|
4181
|
2003-06-19 11:34:33 +02:00
|
|
|
show status like "key_read%";
|
2003-06-12 14:26:50 +02:00
|
|
|
Variable_name Value
|
2005-05-13 11:08:08 +02:00
|
|
|
Key_read_requests 311
|
|
|
|
Key_reads 75
|
2003-06-12 14:26:50 +02:00
|
|
|
flush tables;
|
|
|
|
flush status;
|
2003-06-19 11:34:33 +02:00
|
|
|
show status like "key_read%";
|
2003-06-12 14:26:50 +02:00
|
|
|
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
|
preload.result, key_cache.result, preload.test, key_cache.test, sql_yacc.yy:
Fixed bug #2602 in CACHE INDEX, LOAD INDEX
sql/sql_yacc.yy:
Fixed bug #2602 in CACHE INDEX, LOAD INDEX
mysql-test/t/key_cache.test:
Fixed bug #2602 in CACHE INDEX, LOAD INDEX
mysql-test/t/preload.test:
Fixed bug #2602 in CACHE INDEX, LOAD INDEX
mysql-test/r/key_cache.result:
Fixed bug #2602 in CACHE INDEX, LOAD INDEX
mysql-test/r/preload.result:
Fixed bug #2602 in CACHE INDEX, LOAD INDEX
2004-02-02 09:19:51 +01:00
|
|
|
load index into cache t1, t2 key (primary,b) ignore leaves;
|
2003-06-12 14:26:50 +02:00
|
|
|
Table Op Msg_type Msg_text
|
|
|
|
test.t1 preload_keys status OK
|
|
|
|
test.t2 preload_keys status OK
|
2003-06-19 11:34:33 +02:00
|
|
|
show status like "key_read%";
|
2003-06-12 14:26:50 +02:00
|
|
|
Variable_name Value
|
2005-05-13 11:08:08 +02:00
|
|
|
Key_read_requests 785
|
|
|
|
Key_reads 785
|
2003-06-12 14:26:50 +02:00
|
|
|
select count(*) from t1 where b = 'test1';
|
|
|
|
count(*)
|
|
|
|
4181
|
|
|
|
select count(*) from t2 where b = 'test1';
|
|
|
|
count(*)
|
|
|
|
2584
|
2003-06-19 11:34:33 +02:00
|
|
|
show status like "key_read%";
|
2003-06-12 14:26:50 +02:00
|
|
|
Variable_name Value
|
2005-05-13 11:08:08 +02:00
|
|
|
Key_read_requests 1266
|
|
|
|
Key_reads 821
|
2003-06-12 14:26:50 +02:00
|
|
|
flush tables;
|
|
|
|
flush status;
|
2003-06-19 11:34:33 +02:00
|
|
|
show status like "key_read%";
|
2003-06-12 14:26:50 +02:00
|
|
|
Variable_name Value
|
|
|
|
Key_read_requests 0
|
|
|
|
Key_reads 0
|
preload.result, key_cache.result, preload.test, key_cache.test, sql_yacc.yy:
Fixed bug #2602 in CACHE INDEX, LOAD INDEX
sql/sql_yacc.yy:
Fixed bug #2602 in CACHE INDEX, LOAD INDEX
mysql-test/t/key_cache.test:
Fixed bug #2602 in CACHE INDEX, LOAD INDEX
mysql-test/t/preload.test:
Fixed bug #2602 in CACHE INDEX, LOAD INDEX
mysql-test/r/key_cache.result:
Fixed bug #2602 in CACHE INDEX, LOAD INDEX
mysql-test/r/preload.result:
Fixed bug #2602 in CACHE INDEX, LOAD INDEX
2004-02-02 09:19:51 +01:00
|
|
|
load index into cache t3, t2 key (primary,b) ;
|
2003-06-12 14:26:50 +02:00
|
|
|
Table Op Msg_type Msg_text
|
BUG#26976 - Missing table in merge not noted in related error msg +
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.
myisammrg/myrg_def.h:
Added myrg_print_wrong_table declaration.
myisammrg/myrg_open.c:
If HA_OPEN_FOR_REPAIR is passed to merge engine open function,
report names of tables that we fail to open.
mysql-test/r/backup.result:
Updated test result.
mysql-test/r/key_cache.result:
Updated test result - removed duplicate error.
mysql-test/r/lock.result:
Updated test result - added summary row.
mysql-test/r/merge.result:
A test case for BUG#26976.
mysql-test/r/preload.result:
Updated test result - removed duplicate error, added summary row.
mysql-test/r/ps.result:
Updated test result - removed duplicate error, added summary row.
mysql-test/r/repair.result:
Updated test result - removed duplicate error, added summary row.
mysql-test/r/rpl_failed_optimize.result:
Updated test result - removed duplicate error, added summary row.
mysql-test/r/sp.result:
Updated test result - removed duplicate error, added summary row.
mysql-test/r/view.result:
Updated test result - removed duplicate error, added summary row.
mysql-test/t/merge.test:
A test case for BUG#26976.
sql/ha_myisam.cc:
Do not report same error twice.
sql/ha_myisammrg.cc:
If HA_OPEN_FOR_REPAIR is passed to merge engine open function,
report names of tables that we fail to open.
Added dummy ha_myisammrg::check to not confuse users with
"not implemented" error in case all underlying tables are
fine.
sql/ha_myisammrg.h:
Added ha_myisammrg::check declaration.
sql/share/errmsg.txt:
Added ER_ADMIN_WRONG_MRG_TABLE errno. It is used instead
of ER_WRONG_MRG_TABLE in case HA_OPEN_FOR_REPAIR is
passed to merge engine handler open function.
sql/sql_error.cc:
warning_level_* are now public. It is required by mysql_admin_table to
report message level.
sql/sql_error.h:
warning_level_* are now public. It is required by mysql_admin_table to
report message level.
sql/sql_table.cc:
Reorder mysql_admin_table arguments to meet it's definition.
Report errors that are pending in thd->warn_list as results of
admin function.
2007-06-06 01:42:41 +02:00
|
|
|
test.t3 preload_keys Error Table 'test.t3' doesn't exist
|
2009-02-27 15:11:15 +01:00
|
|
|
test.t3 preload_keys status Operation failed
|
2003-06-12 14:26:50 +02:00
|
|
|
test.t2 preload_keys status OK
|
2003-06-19 11:34:33 +02:00
|
|
|
show status like "key_read%";
|
2003-06-12 14:26:50 +02:00
|
|
|
Variable_name Value
|
2005-05-13 11:08:08 +02:00
|
|
|
Key_read_requests 478
|
|
|
|
Key_reads 478
|
2003-06-12 14:26:50 +02:00
|
|
|
flush tables;
|
|
|
|
flush status;
|
2003-06-19 11:34:33 +02:00
|
|
|
show status like "key_read%";
|
2003-06-12 14:26:50 +02:00
|
|
|
Variable_name Value
|
|
|
|
Key_read_requests 0
|
|
|
|
Key_reads 0
|
preload.result, key_cache.result, preload.test, key_cache.test, sql_yacc.yy:
Fixed bug #2602 in CACHE INDEX, LOAD INDEX
sql/sql_yacc.yy:
Fixed bug #2602 in CACHE INDEX, LOAD INDEX
mysql-test/t/key_cache.test:
Fixed bug #2602 in CACHE INDEX, LOAD INDEX
mysql-test/t/preload.test:
Fixed bug #2602 in CACHE INDEX, LOAD INDEX
mysql-test/r/key_cache.result:
Fixed bug #2602 in CACHE INDEX, LOAD INDEX
mysql-test/r/preload.result:
Fixed bug #2602 in CACHE INDEX, LOAD INDEX
2004-02-02 09:19:51 +01:00
|
|
|
load index into cache t3 key (b), t2 key (c) ;
|
2003-06-12 14:26:50 +02:00
|
|
|
Table Op Msg_type Msg_text
|
BUG#26976 - Missing table in merge not noted in related error msg +
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.
myisammrg/myrg_def.h:
Added myrg_print_wrong_table declaration.
myisammrg/myrg_open.c:
If HA_OPEN_FOR_REPAIR is passed to merge engine open function,
report names of tables that we fail to open.
mysql-test/r/backup.result:
Updated test result.
mysql-test/r/key_cache.result:
Updated test result - removed duplicate error.
mysql-test/r/lock.result:
Updated test result - added summary row.
mysql-test/r/merge.result:
A test case for BUG#26976.
mysql-test/r/preload.result:
Updated test result - removed duplicate error, added summary row.
mysql-test/r/ps.result:
Updated test result - removed duplicate error, added summary row.
mysql-test/r/repair.result:
Updated test result - removed duplicate error, added summary row.
mysql-test/r/rpl_failed_optimize.result:
Updated test result - removed duplicate error, added summary row.
mysql-test/r/sp.result:
Updated test result - removed duplicate error, added summary row.
mysql-test/r/view.result:
Updated test result - removed duplicate error, added summary row.
mysql-test/t/merge.test:
A test case for BUG#26976.
sql/ha_myisam.cc:
Do not report same error twice.
sql/ha_myisammrg.cc:
If HA_OPEN_FOR_REPAIR is passed to merge engine open function,
report names of tables that we fail to open.
Added dummy ha_myisammrg::check to not confuse users with
"not implemented" error in case all underlying tables are
fine.
sql/ha_myisammrg.h:
Added ha_myisammrg::check declaration.
sql/share/errmsg.txt:
Added ER_ADMIN_WRONG_MRG_TABLE errno. It is used instead
of ER_WRONG_MRG_TABLE in case HA_OPEN_FOR_REPAIR is
passed to merge engine handler open function.
sql/sql_error.cc:
warning_level_* are now public. It is required by mysql_admin_table to
report message level.
sql/sql_error.h:
warning_level_* are now public. It is required by mysql_admin_table to
report message level.
sql/sql_table.cc:
Reorder mysql_admin_table arguments to meet it's definition.
Report errors that are pending in thd->warn_list as results of
admin function.
2007-06-06 01:42:41 +02:00
|
|
|
test.t3 preload_keys Error Table 'test.t3' doesn't exist
|
2009-02-27 15:11:15 +01:00
|
|
|
test.t3 preload_keys status Operation failed
|
BUG#26976 - Missing table in merge not noted in related error msg +
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.
myisammrg/myrg_def.h:
Added myrg_print_wrong_table declaration.
myisammrg/myrg_open.c:
If HA_OPEN_FOR_REPAIR is passed to merge engine open function,
report names of tables that we fail to open.
mysql-test/r/backup.result:
Updated test result.
mysql-test/r/key_cache.result:
Updated test result - removed duplicate error.
mysql-test/r/lock.result:
Updated test result - added summary row.
mysql-test/r/merge.result:
A test case for BUG#26976.
mysql-test/r/preload.result:
Updated test result - removed duplicate error, added summary row.
mysql-test/r/ps.result:
Updated test result - removed duplicate error, added summary row.
mysql-test/r/repair.result:
Updated test result - removed duplicate error, added summary row.
mysql-test/r/rpl_failed_optimize.result:
Updated test result - removed duplicate error, added summary row.
mysql-test/r/sp.result:
Updated test result - removed duplicate error, added summary row.
mysql-test/r/view.result:
Updated test result - removed duplicate error, added summary row.
mysql-test/t/merge.test:
A test case for BUG#26976.
sql/ha_myisam.cc:
Do not report same error twice.
sql/ha_myisammrg.cc:
If HA_OPEN_FOR_REPAIR is passed to merge engine open function,
report names of tables that we fail to open.
Added dummy ha_myisammrg::check to not confuse users with
"not implemented" error in case all underlying tables are
fine.
sql/ha_myisammrg.h:
Added ha_myisammrg::check declaration.
sql/share/errmsg.txt:
Added ER_ADMIN_WRONG_MRG_TABLE errno. It is used instead
of ER_WRONG_MRG_TABLE in case HA_OPEN_FOR_REPAIR is
passed to merge engine handler open function.
sql/sql_error.cc:
warning_level_* are now public. It is required by mysql_admin_table to
report message level.
sql/sql_error.h:
warning_level_* are now public. It is required by mysql_admin_table to
report message level.
sql/sql_table.cc:
Reorder mysql_admin_table arguments to meet it's definition.
Report errors that are pending in thd->warn_list as results of
admin function.
2007-06-06 01:42:41 +02:00
|
|
|
test.t2 preload_keys Error Key 'c' doesn't exist in table 't2'
|
2003-06-12 14:26:50 +02:00
|
|
|
test.t2 preload_keys status Operation failed
|
2003-06-19 11:34:33 +02:00
|
|
|
show status like "key_read%";
|
2003-06-12 14:26:50 +02:00
|
|
|
Variable_name Value
|
|
|
|
Key_read_requests 0
|
|
|
|
Key_reads 0
|
|
|
|
drop table t1, t2;
|