mirror of
https://github.com/MariaDB/server.git
synced 2025-01-22 06:44:16 +01:00
23fefc8801
Fixed confusing error message from the storage engine when it fails to open underlying table. The error message is issued when a table is _opened_ (not when it is created). myisammrg/myrg_open.c: Set my_errno to HA_ERR_WRONG_MRG_TABLE_DEF if attempt to open underlying table failed. mysql-test/r/merge.result: A test case for bug#10974. mysql-test/r/repair.result: Fixed a test case according to patch for bug#10974. mysql-test/t/merge.test: A test case for bug#10974. sql/share/english/errmsg.txt: Better error message if we fail to open underlying table. sql/table.cc: Report error from handler with print_error instead of frm_error. This fixes confusing error message from the handler. Actually this is backported from 5.0.
54 lines
1.9 KiB
Text
54 lines
1.9 KiB
Text
drop table if exists t1;
|
|
create table t1 SELECT 1,"table 1";
|
|
repair table t1 use_frm;
|
|
Table Op Msg_type Msg_text
|
|
test.t1 repair warning Number of rows changed from 0 to 1
|
|
test.t1 repair status OK
|
|
alter table t1 ENGINE=HEAP;
|
|
repair table t1 use_frm;
|
|
Table Op Msg_type Msg_text
|
|
test.t1 repair note The storage engine for the table doesn't support repair
|
|
drop table t1;
|
|
create table t1(id int PRIMARY KEY, st varchar(10), KEY st_key(st));
|
|
insert into t1 values(1, "One");
|
|
alter table t1 disable keys;
|
|
show keys from t1;
|
|
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
|
|
t1 0 PRIMARY 1 id A 1 NULL NULL BTREE
|
|
t1 1 st_key 1 st A NULL NULL NULL YES BTREE disabled
|
|
repair table t1 extended;
|
|
Table Op Msg_type Msg_text
|
|
test.t1 repair status OK
|
|
show keys from t1;
|
|
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
|
|
t1 0 PRIMARY 1 id A 1 NULL NULL BTREE
|
|
t1 1 st_key 1 st A NULL NULL NULL YES BTREE disabled
|
|
drop table t1;
|
|
repair table t1 use_frm;
|
|
Table Op Msg_type Msg_text
|
|
test.t1 repair error Table 'test.t1' doesn't exist
|
|
Warnings:
|
|
Error 1146 Table 'test.t1' doesn't exist
|
|
create table t1 engine=myisam SELECT 1,"table 1";
|
|
flush tables;
|
|
repair table t1;
|
|
Table Op Msg_type Msg_text
|
|
test.t1 repair error Incorrect file format 't1'
|
|
Warnings:
|
|
Error 130 Incorrect file format 't1'
|
|
repair table t1 use_frm;
|
|
Table Op Msg_type Msg_text
|
|
test.t1 repair warning Number of rows changed from 0 to 1
|
|
test.t1 repair status OK
|
|
drop table t1;
|
|
CREATE TABLE t1(a INT, KEY(a));
|
|
INSERT INTO t1 VALUES(1),(2),(3),(4),(5);
|
|
SET myisam_repair_threads=2;
|
|
REPAIR TABLE t1;
|
|
Table Op Msg_type Msg_text
|
|
test.t1 repair status OK
|
|
SHOW INDEX FROM t1;
|
|
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
|
|
t1 1 a 1 a A 5 NULL NULL YES BTREE
|
|
SET myisam_repair_threads=@@global.myisam_repair_threads;
|
|
DROP TABLE t1;
|