summaryrefslogtreecommitdiff
path: root/mysql-test/r/ctype_eucjpms.result
diff options
context:
space:
mode:
authorunknown <bar@mysql.com/bar.myoffice.izhnet.ru>2008-02-04 11:10:40 +0400
committerunknown <bar@mysql.com/bar.myoffice.izhnet.ru>2008-02-04 11:10:40 +0400
commitf792cf3e3857040667746e662aad9a0ef4dea676 (patch)
treee402fb1aa9596c1c1353d12de0dcffa6304a254d /mysql-test/r/ctype_eucjpms.result
parent7faa7d60aa3d7df5b0617103559d1e3df41dba0b (diff)
downloadmariadb-git-f792cf3e3857040667746e662aad9a0ef4dea676.tar.gz
Bug#32510 LIKE search fails with indexed 'eucjpms' and 'ujis' char column
Problem: some collation handlers called incorrect version of my_like_range_xxx(), which led to wrong min_str and max_str, so like range optimizer threw away good records. Fix: changing the wrong handlers to call proper version of my_like_range_xxx(). mysql-test/r/ctype_big5.result: Adding test mysql-test/r/ctype_cp932.result: Adding test mysql-test/r/ctype_eucjpms.result: Adding test mysql-test/r/ctype_euckr.result: Adding test mysql-test/r/ctype_gb2312.result: Adding test mysql-test/r/ctype_gbk.result: Adding test mysql-test/r/ctype_sjis.result: Adding test mysql-test/r/ctype_uca.result: Adding test mysql-test/r/ctype_ucs.result: Adding test mysql-test/r/ctype_ujis.result: Adding test mysql-test/t/ctype_big5.test: Adding test mysql-test/t/ctype_cp932.test: Adding test mysql-test/t/ctype_eucjpms.test: Adding test mysql-test/t/ctype_euckr.test: Adding test mysql-test/t/ctype_gb2312.test: Adding test mysql-test/t/ctype_gbk.test: Adding test mysql-test/t/ctype_sjis.test: Adding test mysql-test/t/ctype_uca.test: Adding test mysql-test/t/ctype_ucs.test: Adding test mysql-test/t/ctype_ujis.test: Adding test strings/ctype-euc_kr.c: Changing like_range function strings/ctype-eucjpms.c: Changing like_range function strings/ctype-gb2312.c: Changing like_range function strings/ctype-ucs2.c: Changing like_range function strings/ctype-ujis.c: Changing like_range function mysql-test/include/ctype_like_range_f1f2.inc: New BitKeeper file ``mysql-test/include/ctype_like_range_f1f2.inc''
Diffstat (limited to 'mysql-test/r/ctype_eucjpms.result')
-rwxr-xr-xmysql-test/r/ctype_eucjpms.result34
1 files changed, 34 insertions, 0 deletions
diff --git a/mysql-test/r/ctype_eucjpms.result b/mysql-test/r/ctype_eucjpms.result
index ad9666d0c86..21aa38b7fe6 100755
--- a/mysql-test/r/ctype_eucjpms.result
+++ b/mysql-test/r/ctype_eucjpms.result
@@ -9809,6 +9809,23 @@ eucjpms_japanese_ci 6109
eucjpms_japanese_ci 61
eucjpms_japanese_ci 6120
drop table t1;
+CREATE TABLE t1 AS
+SELECT 10 AS a, REPEAT('a',20) AS b, REPEAT('a',8) AS c, REPEAT('a',8) AS d;
+ALTER TABLE t1 ADD PRIMARY KEY(a), ADD KEY(b);
+INSERT INTO t1 (a, b) VALUES (1, repeat(0xF1F2,5));
+INSERT INTO t1 (a, b) VALUES (2, repeat(0xF1F2,10));
+INSERT INTO t1 (a, b) VALUES (3, repeat(0xF1F2,11));
+INSERT INTO t1 (a, b) VALUES (4, repeat(0xF1F2,12));
+SELECT hex(concat(repeat(0xF1F2, 10), '%'));
+hex(concat(repeat(0xF1F2, 10), '%'))
+F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F225
+3 rows expected
+SELECT a, hex(b), c FROM t1 WHERE b LIKE concat(repeat(0xF1F2,10), '%');
+a hex(b) c
+2 F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2
+3 F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2
+4 F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2
+DROP TABLE t1;
SET collation_connection='eucjpms_bin';
create table t1 select repeat('a',4000) a;
delete from t1;
@@ -9819,6 +9836,23 @@ eucjpms_bin 6109
eucjpms_bin 61
eucjpms_bin 6120
drop table t1;
+CREATE TABLE t1 AS
+SELECT 10 AS a, REPEAT('a',20) AS b, REPEAT('a',8) AS c, REPEAT('a',8) AS d;
+ALTER TABLE t1 ADD PRIMARY KEY(a), ADD KEY(b);
+INSERT INTO t1 (a, b) VALUES (1, repeat(0xF1F2,5));
+INSERT INTO t1 (a, b) VALUES (2, repeat(0xF1F2,10));
+INSERT INTO t1 (a, b) VALUES (3, repeat(0xF1F2,11));
+INSERT INTO t1 (a, b) VALUES (4, repeat(0xF1F2,12));
+SELECT hex(concat(repeat(0xF1F2, 10), '%'));
+hex(concat(repeat(0xF1F2, 10), '%'))
+F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F225
+3 rows expected
+SELECT a, hex(b), c FROM t1 WHERE b LIKE concat(repeat(0xF1F2,10), '%');
+a hex(b) c
+2 F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2
+3 F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2
+4 F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2
+DROP TABLE t1;
select hex(convert(_eucjpms 0xA5FE41 using ucs2));
hex(convert(_eucjpms 0xA5FE41 using ucs2))
003F0041