diff options
author | Eugene Kosov <claprix@yandex.ru> | 2019-10-14 18:13:02 +0300 |
---|---|---|
committer | Eugene Kosov <claprix@yandex.ru> | 2020-02-18 22:53:29 +0300 |
commit | df07e00a810890f6f6eb1334c76ee22133750777 (patch) | |
tree | 7edc089f9f90a1894a53d4cfa7db63533cd7a918 /mysql-test | |
parent | 7ccc1710a0dc4dd397905f9488e3c55d91d5ac7b (diff) | |
download | mariadb-git-df07e00a810890f6f6eb1334c76ee22133750777.tar.gz |
MDEV-20726 InnoDB: Assertion failure in file data0type.cc line 67bb-10.4-MDEV-20726-alter-utf8
Do not rebuild index when it's key part converted from utf8mb3 to utf8mb4
but key part stays the same.
dict_index_add_to_cache(): assert that prefix_len is divided by mbmaxlen
ha_innobase::compare_key_parts(): compare key part lenght in symbols instead
of bytes.
Diffstat (limited to 'mysql-test')
-rw-r--r-- | mysql-test/suite/innodb/r/instant_alter_charset.result | 11 | ||||
-rw-r--r-- | mysql-test/suite/innodb/t/instant_alter_charset.test | 15 |
2 files changed, 26 insertions, 0 deletions
diff --git a/mysql-test/suite/innodb/r/instant_alter_charset.result b/mysql-test/suite/innodb/r/instant_alter_charset.result index f8c21978327..cbb49819bfe 100644 --- a/mysql-test/suite/innodb/r/instant_alter_charset.result +++ b/mysql-test/suite/innodb/r/instant_alter_charset.result @@ -1918,3 +1918,14 @@ check table t; Table Op Msg_type Msg_text test.t check status OK drop table t; +# +# MDEV-20726: InnoDB: Assertion failure in file data0type.cc line 67 +# +CREATE TABLE t ( +id int(10) unsigned NOT NULL PRIMARY KEY, +a text CHARSET utf8mb3, +KEY a_idx(a(1)) +) ENGINE=InnoDB; +INSERT INTO t VALUES (1, 'something in the air'); +ALTER TABLE t MODIFY a text CHARSET utf8mb4; +DROP TABLE t; diff --git a/mysql-test/suite/innodb/t/instant_alter_charset.test b/mysql-test/suite/innodb/t/instant_alter_charset.test index 82ae1040f57..270db2d6462 100644 --- a/mysql-test/suite/innodb/t/instant_alter_charset.test +++ b/mysql-test/suite/innodb/t/instant_alter_charset.test @@ -715,3 +715,18 @@ alter table t modify c varchar(10) collate latin1_general_cs, algorithm=instant; check table t; drop table t; + +--echo # +--echo # MDEV-20726: InnoDB: Assertion failure in file data0type.cc line 67 +--echo # + +CREATE TABLE t ( + id int(10) unsigned NOT NULL PRIMARY KEY, + a text CHARSET utf8mb3, + KEY a_idx(a(1)) +) ENGINE=InnoDB; + +INSERT INTO t VALUES (1, 'something in the air'); +ALTER TABLE t MODIFY a text CHARSET utf8mb4; + +DROP TABLE t; |