summaryrefslogtreecommitdiff
path: root/myisam
diff options
context:
space:
mode:
authorRamil Kalimullin <ramil@mysql.com>2008-08-26 18:48:50 +0500
committerRamil Kalimullin <ramil@mysql.com>2008-08-26 18:48:50 +0500
commitb21997851493d2da85a34e8de669f55ae60a12f5 (patch)
tree394f2027a5da1365dc8bcf00213ccf58b8d61289 /myisam
parent3b1adb501e426682c0c7bdca455694d0d4c39342 (diff)
downloadmariadb-git-b21997851493d2da85a34e8de669f55ae60a12f5.tar.gz
Fix for bug #37310: 'on update CURRENT_TIMESTAMP' option crashes the table
Problem: data consistency check (maximum record length) for a correct MyISAM table with CHECKSUM=1 and ROW_FORMAT=DYNAMIC option may fail due to wrong inner MyISAM parameter. In result we may have the table marked as 'corrupted'. Fix: properly set MyISAM maximum record length parameter. myisam/mi_create.c: Fix for bug #37310: 'on update CURRENT_TIMESTAMP' option crashes the table Use HA_OPTION_PACK_RECORD instead of HA_PACK_RECORD (typo?) calculating packed record length.
Diffstat (limited to 'myisam')
-rw-r--r--myisam/mi_create.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/myisam/mi_create.c b/myisam/mi_create.c
index 75863ed976f..bb53393c345 100644
--- a/myisam/mi_create.c
+++ b/myisam/mi_create.c
@@ -192,7 +192,7 @@ int mi_create(const char *name,uint keys,MI_KEYDEF *keydefs,
packed=(packed+7)/8;
if (pack_reclength != INT_MAX32)
pack_reclength+= reclength+packed +
- test(test_all_bits(options, HA_OPTION_CHECKSUM | HA_PACK_RECORD));
+ test(test_all_bits(options, HA_OPTION_CHECKSUM | HA_OPTION_PACK_RECORD));
min_pack_length+=packed;
if (!ci->data_file_length && ci->max_rows)