1
0
mirror of https://github.com/MariaDB/server.git synced 2026-01-06 05:22:24 +03:00

bug#7284: strnxfrm returns different results for equal strings

This commit is contained in:
bar@mysql.com
2005-01-13 18:12:04 +04:00
parent 9cea2457ec
commit e3d6e6736b
34 changed files with 344 additions and 45 deletions

View File

@@ -56,3 +56,24 @@ DROP DATABASE d1;
USE test;
SET character_set_server= @safe_character_set_server;
SET collation_server= @safe_collation_server;
SET NAMES big5;
SET collation_connection='big5_chinese_ci';
create table t1 select repeat('a',4000) a;
delete from t1;
insert into t1 values ('a'), ('a '), ('a\t');
select collation(a),hex(a) from t1 order by a;
collation(a) hex(a)
big5_chinese_ci 6109
big5_chinese_ci 61
big5_chinese_ci 6120
drop table t1;
SET collation_connection='big5_bin';
create table t1 select repeat('a',4000) a;
delete from t1;
insert into t1 values ('a'), ('a '), ('a\t');
select collation(a),hex(a) from t1 order by a;
collation(a) hex(a)
big5_bin 6109
big5_bin 61
big5_bin 6120
drop table t1;

View File

@@ -305,3 +305,23 @@ select 'a' regexp 'A' collate latin1_general_cs;
select 'a' regexp 'A' collate latin1_bin;
'a' regexp 'A' collate latin1_bin
0
SET collation_connection='latin1_swedish_ci';
create table t1 select repeat('a',4000) a;
delete from t1;
insert into t1 values ('a'), ('a '), ('a\t');
select collation(a),hex(a) from t1 order by a;
collation(a) hex(a)
latin1_swedish_ci 6109
latin1_swedish_ci 61
latin1_swedish_ci 6120
drop table t1;
SET collation_connection='latin1_bin';
create table t1 select repeat('a',4000) a;
delete from t1;
insert into t1 values ('a'), ('a '), ('a\t');
select collation(a),hex(a) from t1 order by a;
collation(a) hex(a)
latin1_bin 6109
latin1_bin 61
latin1_bin 6120
drop table t1;

View File

@@ -317,3 +317,12 @@ FIELD('ue',s1) FIELD('
1 1 1 1
1 1 1 1
DROP TABLE t1;
create table t1 select repeat('a',4000) a;
delete from t1;
insert into t1 values ('a'), ('a '), ('a\t');
select collation(a),hex(a) from t1 order by a;
collation(a) hex(a)
latin1_german2_ci 6109
latin1_german2_ci 61
latin1_german2_ci 6120
drop table t1;

View File

@@ -71,3 +71,23 @@ B1
B2
B3
drop table t1;
SET collation_connection='sjis_japanese_ci';
create table t1 select repeat('a',4000) a;
delete from t1;
insert into t1 values ('a'), ('a '), ('a\t');
select collation(a),hex(a) from t1 order by a;
collation(a) hex(a)
sjis_japanese_ci 6109
sjis_japanese_ci 61
sjis_japanese_ci 6120
drop table t1;
SET collation_connection='sjis_bin';
create table t1 select repeat('a',4000) a;
delete from t1;
insert into t1 values ('a'), ('a '), ('a\t');
select collation(a),hex(a) from t1 order by a;
collation(a) hex(a)
sjis_bin 6109
sjis_bin 61
sjis_bin 6120
drop table t1;

View File

@@ -2937,3 +2937,23 @@ Screensaver 2 2002-01-22 491 0 519 0 0
3 http://www.siamzone.com/download/download/000003-jasonx2(800x600).jpg Jaso
n X Wallpapers 1 2002-05-31 579 0 1091 0 0
DROP TABLE t1;
SET collation_connection='tis620_thai_ci';
create table t1 select repeat('a',4000) a;
delete from t1;
insert into t1 values ('a'), ('a '), ('a\t');
select collation(a),hex(a) from t1 order by a;
collation(a) hex(a)
tis620_thai_ci 6109
tis620_thai_ci 61
tis620_thai_ci 6120
drop table t1;
SET collation_connection='tis620_bin';
create table t1 select repeat('a',4000) a;
delete from t1;
insert into t1 values ('a'), ('a '), ('a\t');
select collation(a),hex(a) from t1 order by a;
collation(a) hex(a)
tis620_bin 6109
tis620_bin 61
tis620_bin 6120
drop table t1;

View File

@@ -2386,3 +2386,13 @@ a 1
b 0
c 0
drop table t1;
SET collation_connection='utf8_unicode_ci';
create table t1 select repeat('a',4000) a;
delete from t1;
insert into t1 values ('a'), ('a '), ('a\t');
select collation(a),hex(a) from t1 order by a;
collation(a) hex(a)
utf8_unicode_ci 6109
utf8_unicode_ci 61
utf8_unicode_ci 6120
drop table t1;

View File

@@ -592,3 +592,24 @@ a NULL
b NULL
c NULL
drop table t1;
SET collation_connection='ucs2_general_ci';
create table t1 select repeat('a',4000) a;
delete from t1;
insert into t1 values ('a'), ('a '), ('a\t');
select collation(a),hex(a) from t1 order by a;
collation(a) hex(a)
ucs2_general_ci 00610009
ucs2_general_ci 0061
ucs2_general_ci 00610020
drop table t1;
SET NAMES latin1;
SET collation_connection='ucs2_bin';
create table t1 select repeat('a',4000) a;
delete from t1;
insert into t1 values ('a'), ('a '), ('a\t');
select collation(a),hex(a) from t1 order by a;
collation(a) hex(a)
ucs2_bin 00610009
ucs2_bin 0061
ucs2_bin 00610020
drop table t1;

View File

@@ -2207,3 +2207,23 @@ F4FC
F4FD
F4FE
DROP TABLE t1;
SET collation_connection='ujis_japanese_ci';
create table t1 select repeat('a',4000) a;
delete from t1;
insert into t1 values ('a'), ('a '), ('a\t');
select collation(a),hex(a) from t1 order by a;
collation(a) hex(a)
ujis_japanese_ci 6109
ujis_japanese_ci 61
ujis_japanese_ci 6120
drop table t1;
SET collation_connection='ujis_bin';
create table t1 select repeat('a',4000) a;
delete from t1;
insert into t1 values ('a'), ('a '), ('a\t');
select collation(a),hex(a) from t1 order by a;
collation(a) hex(a)
ujis_bin 6109
ujis_bin 61
ujis_bin 6120
drop table t1;

View File

@@ -829,3 +829,23 @@ select * from t1 where soundex(a) = soundex('test');
id a
1 Test
drop table t1;
SET collation_connection='utf8_general_ci';
create table t1 select repeat('a',4000) a;
delete from t1;
insert into t1 values ('a'), ('a '), ('a\t');
select collation(a),hex(a) from t1 order by a;
collation(a) hex(a)
utf8_general_ci 6109
utf8_general_ci 61
utf8_general_ci 6120
drop table t1;
SET collation_connection='utf8_bin';
create table t1 select repeat('a',4000) a;
delete from t1;
insert into t1 values ('a'), ('a '), ('a\t');
select collation(a),hex(a) from t1 order by a;
collation(a) hex(a)
utf8_bin 6109
utf8_bin 61
utf8_bin 6120
drop table t1;