summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--storage/innobase/dict/dict0load.cc13
1 files changed, 9 insertions, 4 deletions
diff --git a/storage/innobase/dict/dict0load.cc b/storage/innobase/dict/dict0load.cc
index 623403db3c8..2830aea167f 100644
--- a/storage/innobase/dict/dict0load.cc
+++ b/storage/innobase/dict/dict0load.cc
@@ -2577,10 +2577,15 @@ corrupted:
goto func_exit;
}
- for (uint i = 0; i < index->n_fields; i++) {
- dict_field_t &f = index->fields[i];
- ut_ad(f.col->mbmaxlen == 0
- || f.prefix_len % f.col->mbmaxlen == 0);
+ // The following assertion doesn't hold for FTS indexes
+ // as it may have prefix_len=1 with any charset
+ if (index->type != DICT_FTS) {
+ for (uint i = 0; i < index->n_fields; i++) {
+ dict_field_t &f = index->fields[i];
+ ut_ad(f.col->mbmaxlen == 0
+ || f.prefix_len
+ % f.col->mbmaxlen == 0);
+ }
}
}
next_rec: