diff options
author | unknown <gshchepa/uchum@host.loc> | 2008-05-13 00:32:43 +0500 |
---|---|---|
committer | unknown <gshchepa/uchum@host.loc> | 2008-05-13 00:32:43 +0500 |
commit | ef4b6200acb0e7a4cc129d91d5c906dc316ab5a7 (patch) | |
tree | 6c7f2470029dd6998a8401c22e1b1c31cc278ef6 /sql | |
parent | ab6e91cf3af9ef3d69e80420eef1ada05d66b9f7 (diff) | |
parent | e7e49eb69ee6ca949d8f885505da572bb1d394c4 (diff) | |
download | mariadb-git-ef4b6200acb0e7a4cc129d91d5c906dc316ab5a7.tar.gz |
Merge host.loc:/work/bugs/5.0-bugteam-36055
into host.loc:/work/bk/5.0-bugteam
Diffstat (limited to 'sql')
-rw-r--r-- | sql/handler.cc | 2 | ||||
-rw-r--r-- | sql/sql_table.cc | 7 |
2 files changed, 9 insertions, 0 deletions
diff --git a/sql/handler.cc b/sql/handler.cc index bfad10f986f..40b85a0901c 100644 --- a/sql/handler.cc +++ b/sql/handler.cc @@ -1980,6 +1980,8 @@ int handler::ha_check_for_upgrade(HA_CHECK_OPT *check_opt) } } } + if (table->s->frm_version != FRM_VER_TRUE_VARCHAR) + return HA_ADMIN_NEEDS_ALTER; return check_for_upgrade(check_opt); } diff --git a/sql/sql_table.cc b/sql/sql_table.cc index 9e1a8151e3a..f1de63892d5 100644 --- a/sql/sql_table.cc +++ b/sql/sql_table.cc @@ -2118,6 +2118,13 @@ static int prepare_for_repair(THD* thd, TABLE_LIST *table_list, const char **ext= table->file->bas_ext(); MY_STAT stat_info; + if (table->s->frm_version != FRM_VER_TRUE_VARCHAR) + { + error= send_check_errmsg(thd, table_list, "repair", + "Failed reparing incompatible .FRM file"); + goto end; + } + /* Check if this is a table type that stores index and data separately, like ISAM or MyISAM. We assume fixed order of engine file name |