Loading innobase/dict/dict0crea.c +11 −0 Original line number Diff line number Diff line Loading @@ -81,6 +81,17 @@ dict_create_sys_tables_tuple( dfield_set_data(dfield, ptr, 8); /* 7: MIX_LEN --------------------------*/ /* Track corruption reported on mailing list Jan 14, 2005 */ if (table->mix_len != 0 && table->mix_len != 0x80000000) { fprintf(stderr, "InnoDB: Error: mix_len is %lu in table %s\n", (ulong)table->mix_len, table->name); mem_analyze_corruption((byte*)&(table->mix_len)); ut_error; } dfield = dtuple_get_nth_field(entry, 5); ptr = mem_heap_alloc(heap, 4); Loading innobase/dict/dict0load.c +17 −0 Original line number Diff line number Diff line Loading @@ -729,6 +729,7 @@ dict_load_table( ulint space; ulint n_cols; ulint err; ulint mix_len; mtr_t mtr; #ifdef UNIV_SYNC_DEBUG Loading Loading @@ -775,6 +776,22 @@ dict_load_table( return(NULL); } /* Track a corruption bug reported on the MySQL mailing list Jan 14, 2005: mix_len had a value different from 0 */ field = rec_get_nth_field(rec, 7, &len); ut_a(len == 4); mix_len = mach_read_from_4(field); if (mix_len != 0 && mix_len != 0x80000000) { ut_print_timestamp(stderr); fprintf(stderr, " InnoDB: table %s has a nonsensical mix len %lu\n", name, (ulong)mix_len); } #if MYSQL_VERSION_ID < 50300 /* Starting from MySQL 5.0.3, the high-order bit of MIX_LEN is the "compact format" flag. */ Loading Loading
innobase/dict/dict0crea.c +11 −0 Original line number Diff line number Diff line Loading @@ -81,6 +81,17 @@ dict_create_sys_tables_tuple( dfield_set_data(dfield, ptr, 8); /* 7: MIX_LEN --------------------------*/ /* Track corruption reported on mailing list Jan 14, 2005 */ if (table->mix_len != 0 && table->mix_len != 0x80000000) { fprintf(stderr, "InnoDB: Error: mix_len is %lu in table %s\n", (ulong)table->mix_len, table->name); mem_analyze_corruption((byte*)&(table->mix_len)); ut_error; } dfield = dtuple_get_nth_field(entry, 5); ptr = mem_heap_alloc(heap, 4); Loading
innobase/dict/dict0load.c +17 −0 Original line number Diff line number Diff line Loading @@ -729,6 +729,7 @@ dict_load_table( ulint space; ulint n_cols; ulint err; ulint mix_len; mtr_t mtr; #ifdef UNIV_SYNC_DEBUG Loading Loading @@ -775,6 +776,22 @@ dict_load_table( return(NULL); } /* Track a corruption bug reported on the MySQL mailing list Jan 14, 2005: mix_len had a value different from 0 */ field = rec_get_nth_field(rec, 7, &len); ut_a(len == 4); mix_len = mach_read_from_4(field); if (mix_len != 0 && mix_len != 0x80000000) { ut_print_timestamp(stderr); fprintf(stderr, " InnoDB: table %s has a nonsensical mix len %lu\n", name, (ulong)mix_len); } #if MYSQL_VERSION_ID < 50300 /* Starting from MySQL 5.0.3, the high-order bit of MIX_LEN is the "compact format" flag. */ Loading