mirror of
https://github.com/MariaDB/server.git
synced 2026-01-06 05:22:24 +03:00
Fixing a bug in MDEV-8418 (utf16, utf16le) and MDEV-8417 (utf8mb4).
Fixing non-BMP characters to have the same weight, as it was before MDEV-8418 and MDEV-8417.
This commit is contained in:
@@ -1808,16 +1808,21 @@ DROP TABLE t1;
|
||||
--echo #
|
||||
--echo # MDEV-8417 utf8mb4: compare broken bytes as "greater than any non-broken character"
|
||||
--echo #
|
||||
CREATE TABLE t1 (a VARCHAR(10) CHARACTER SET utf8mb4, KEY(a));
|
||||
INSERT INTO t1 VALUES (0x61);
|
||||
INSERT INTO t1 VALUES (0xC280),(0xDFBF);
|
||||
INSERT INTO t1 VALUES (0xE0A080),(0xEFBFBF);
|
||||
INSERT INTO t1 VALUES (0xF0908080),(0xF48FBFBF);
|
||||
SELECT HEX(a) FROM t1 ORDER BY a;
|
||||
SELECT HEX(a) FROM t1 ORDER BY a DESC;
|
||||
CREATE TABLE t1 (
|
||||
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
||||
a VARCHAR(10) CHARACTER SET utf8mb4, KEY(a,id)
|
||||
);
|
||||
INSERT INTO t1 (a) VALUES (0x61);
|
||||
INSERT INTO t1 (a) VALUES (0xC280),(0xDFBF);
|
||||
INSERT INTO t1 (a) VALUES (0xE0A080),(0xEFBFBF);
|
||||
INSERT INTO t1 (a) VALUES (0xF0908080),(0xF48FBFBF);
|
||||
SELECT id,HEX(a) FROM t1 ORDER BY a,id;
|
||||
SELECT id,HEX(a) FROM t1 ORDER BY a DESC,id DESC;
|
||||
SELECT COUNT(DISTINCT a) FROM t1;
|
||||
ALTER TABLE t1 MODIFY a VARCHAR(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
|
||||
SELECT HEX(a) FROM t1 ORDER BY a;
|
||||
SELECT HEX(a) FROM t1 ORDER BY a DESC;
|
||||
SELECT id,HEX(a) FROM t1 ORDER BY a;
|
||||
SELECT id,HEX(a) FROM t1 ORDER BY a DESC,id DESC;
|
||||
SELECT COUNT(DISTINCT a) FROM t1;
|
||||
DROP TABLE t1;
|
||||
|
||||
--echo #
|
||||
|
||||
Reference in New Issue
Block a user