* don't use 1-8 numbers for open_table_error codes, use an enum.

* print "table doesn't exist in engine" when a table doesn't exist in the engine,
  instead of "file not found" (if no file was involved)
* print a complete filename that cannot be found ('t1.MYI', not 't1')
* it's not an error for a DROP if a table doesn't exist in the engine (or some table
  files cannot be found) - if the DROP succeeded regardless
This commit is contained in:
Sergei Golubchik 2013-04-09 15:34:17 +02:00
commit 163882665e
29 changed files with 196 additions and 216 deletions

View file

@ -60,6 +60,11 @@ frm_type_enum dd_frm_type(THD *thd, char *path, enum legacy_db_type *dbt)
(header[2] < FRM_VER+3 || header[2] > FRM_VER+4)))
DBUG_RETURN(FRMTYPE_TABLE);
/*
XXX this is a bug.
if header[3] is > DB_TYPE_FIRST_DYNAMIC, then the complete
storage engine name must be read from the frm
*/
*dbt= (enum legacy_db_type) (uint) *(header + 3);
/* Probably a table. */