summaryrefslogtreecommitdiff
path: root/innobase/dict
diff options
context:
space:
mode:
authorsergefp@mysql.com <>2004-12-13 20:30:44 +0300
committersergefp@mysql.com <>2004-12-13 20:30:44 +0300
commita8e52ef4129bf0f908c702d2330ea053b92628d9 (patch)
treeb6f5ba3db45f77e494471bee5485097c22b60c71 /innobase/dict
parent6b14f6976f3b99f670c70cd2630910c2ceecd5b2 (diff)
parentcd8743409f3f6a03430f5db16e65a2e98a3a9d4b (diff)
downloadmariadb-git-a8e52ef4129bf0f908c702d2330ea053b92628d9.tar.gz
Merge mysql.com:/dbdata/psergey/mysql-4.0-bug6976
into mysql.com:/dbdata/psergey/mysql-4.1-merge
Diffstat (limited to 'innobase/dict')
-rw-r--r--innobase/dict/dict0load.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/innobase/dict/dict0load.c b/innobase/dict/dict0load.c
index 8fc6eb9141e..7890ebd2b47 100644
--- a/innobase/dict/dict0load.c
+++ b/innobase/dict/dict0load.c
@@ -765,6 +765,22 @@ dict_load_table(
return(NULL);
}
+#if MYSQL_VERSION_ID < 50300
+ /* Starting from MySQL 5.0.3, the high-order bit of MIX_LEN is the
+ "compact format" flag. */
+ field = rec_get_nth_field(rec, 7, &len);
+ if (mach_read_from_1(field) & 0x80) {
+ btr_pcur_close(&pcur);
+ mtr_commit(&mtr);
+ mem_heap_free(heap);
+ ut_print_timestamp(stderr);
+ fprintf(stderr,
+ " InnoDB: table %s is in the new compact format\n"
+ "InnoDB: of MySQL 5.0.3 or later\n", name);
+ return(NULL);
+ }
+#endif /* MYSQL_VERSION_ID < 50300 */
+
ut_a(0 == ut_strcmp("SPACE",
dict_field_get_col(
dict_index_get_nth_field(