909
909
block_size= table_options.has_block_size() ?
910
910
table_options.block_size() : 0;
912
table_charset= get_charset(table_options.has_collation_id()?
913
table_options.collation_id() : 0);
912
table_charset= get_charset(table_options.collation_id());
915
914
if (!table_charset)
917
/* unknown charset in head[38] or pre-3.23 frm */
918
if (use_mb(default_charset_info))
920
/* Warn that we may be changing the size of character columns */
921
errmsg_printf(ERRMSG_LVL_WARN,
922
_("'%s' had no or invalid character set, "
923
"and default character set is multi-byte, "
924
"so character column sizes may have changed"),
927
table_charset= default_charset_info;
917
snprintf(errmsg, sizeof(errmsg),
918
_("Table %s has invalid/unknown collation: %d,%s"),
920
table_options.collation_id(),
921
table_options.collation().c_str());
924
my_error(ER_CORRUPT_TABLE_DEFINITION, MYF(0), errmsg);
925
return ER_CORRUPT_TABLE_DEFINITION;
930
928
db_record_offset= 1;