Description:
If I create a table using a non-MyISAM storage engine,
and later that storage engine is not available, then
"select * from information_schema ..." statements return
errors saying the ".MYI" file isn't found. That is not a
good message (the true error is that the storage engine
is no longer available). But what is really bad is that
I cannot see the columns of MyISAM tables either, because
the SELECT statement fails instead of returning metadata
about all the tables that don't have errors.
The error occurs with InnoDB tables. It also occurs with
NDB tables that were created using MySQL 4.1,
How to repeat:
Start server with default, so InnoDB storage engine is available.
mysql> create table t1 (s1 int, primary key (s1)) engine=innodb;
Query OK, 0 rows affected (1.03 sec)
Quit.
Start server with --skip-innodb.
mysql> select * from information_schema.statistics;
ERROR 1017 (HY000): Can't find file: 't1.MYI' (errno: 2)
mysql> select * from information_schema.columns;
ERROR 1017 (HY000): Can't find file: 't1.MYI' (errno: 2)