diff options
author | Alexander Barkov <bar@mnogosearch.org> | 2013-11-08 14:30:35 +0400 |
---|---|---|
committer | Alexander Barkov <bar@mnogosearch.org> | 2013-11-08 14:30:35 +0400 |
commit | d79d0c4045f5b93ded001ca6b963727b3362cd15 (patch) | |
tree | 5645bdbdae6cd831846798f18815e11e21d60c2e /mysql-test | |
parent | a588de1fe8d6b376cabb67581374078c7a7d38d7 (diff) | |
parent | a33bb001445d2576f15437d9392bc70736ab419a (diff) | |
download | mariadb-git-d79d0c4045f5b93ded001ca6b963727b3362cd15.tar.gz |
merge 5.3 -> 5.5
Diffstat (limited to 'mysql-test')
-rw-r--r-- | mysql-test/include/ctype_str_to_date.inc | 12 | ||||
-rw-r--r-- | mysql-test/r/ctype_latin1.result | 19 | ||||
-rw-r--r-- | mysql-test/r/ctype_sjis.result | 19 | ||||
-rw-r--r-- | mysql-test/r/ctype_ucs.result | 19 | ||||
-rw-r--r-- | mysql-test/r/ctype_utf8.result | 19 | ||||
-rw-r--r-- | mysql-test/t/ctype_latin1.test | 1 | ||||
-rw-r--r-- | mysql-test/t/ctype_sjis.test | 1 | ||||
-rw-r--r-- | mysql-test/t/ctype_ucs.test | 1 | ||||
-rw-r--r-- | mysql-test/t/ctype_utf8.test | 1 |
9 files changed, 92 insertions, 0 deletions
diff --git a/mysql-test/include/ctype_str_to_date.inc b/mysql-test/include/ctype_str_to_date.inc new file mode 100644 index 00000000000..62adb05b094 --- /dev/null +++ b/mysql-test/include/ctype_str_to_date.inc @@ -0,0 +1,12 @@ +--echo # +--echo # MDEV-4842 STR_TO_DATE does not work with UCS2/UTF16/UTF32 +--echo # + +SELECT @@character_set_connection, HEX(CAST(_utf8'÷' AS CHAR)); +SELECT STR_TO_DATE(CAST(_utf8'2001÷01÷01' AS CHAR),CAST(_utf8'%Y÷%m÷%d' AS CHAR)); +CREATE TABLE t1 AS SELECT REPEAT(' ', 64) AS subject, REPEAT(' ',64) AS pattern LIMIT 0; +SHOW COLUMNS FROM t1; +INSERT INTO t1 VALUES (_utf8'2001÷01÷01',_utf8'%Y÷%m÷%d'); +SELECT HEX(subject),HEX(pattern),STR_TO_DATE(subject, pattern) FROM t1; +DROP TABLE t1; + diff --git a/mysql-test/r/ctype_latin1.result b/mysql-test/r/ctype_latin1.result index 5ed8159aae3..2debf288f44 100644 --- a/mysql-test/r/ctype_latin1.result +++ b/mysql-test/r/ctype_latin1.result @@ -336,6 +336,25 @@ select c1 as c2h from t1 where c1 like 'ab#_def' escape '#'; c2h ab_def drop table t1; +# +# MDEV-4842 STR_TO_DATE does not work with UCS2/UTF16/UTF32 +# +SELECT @@character_set_connection, HEX(CAST(_utf8'÷' AS CHAR)); +@@character_set_connection HEX(CAST(_utf8'÷' AS CHAR)) +latin1 F7 +SELECT STR_TO_DATE(CAST(_utf8'2001÷01÷01' AS CHAR),CAST(_utf8'%Y÷%m÷%d' AS CHAR)); +STR_TO_DATE(CAST(_utf8'2001÷01÷01' AS CHAR),CAST(_utf8'%Y÷%m÷%d' AS CHAR)) +2001-01-01 +CREATE TABLE t1 AS SELECT REPEAT(' ', 64) AS subject, REPEAT(' ',64) AS pattern LIMIT 0; +SHOW COLUMNS FROM t1; +Field Type Null Key Default Extra +subject varchar(64) NO +pattern varchar(64) NO +INSERT INTO t1 VALUES (_utf8'2001÷01÷01',_utf8'%Y÷%m÷%d'); +SELECT HEX(subject),HEX(pattern),STR_TO_DATE(subject, pattern) FROM t1; +HEX(subject) HEX(pattern) STR_TO_DATE(subject, pattern) +32303031F73031F73031 2559F7256DF72564 2001-01-01 00:00:00 +DROP TABLE t1; SET collation_connection='latin1_bin'; create table t1 select repeat('a',4000) a; delete from t1; diff --git a/mysql-test/r/ctype_sjis.result b/mysql-test/r/ctype_sjis.result index abeb19c0c8f..b776f1cf7d6 100644 --- a/mysql-test/r/ctype_sjis.result +++ b/mysql-test/r/ctype_sjis.result @@ -138,6 +138,25 @@ a hex(b) c 3 F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2 4 F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2 DROP TABLE t1; +# +# MDEV-4842 STR_TO_DATE does not work with UCS2/UTF16/UTF32 +# +SELECT @@character_set_connection, HEX(CAST(_utf8'÷' AS CHAR)); +@@character_set_connection HEX(CAST(_utf8'÷' AS CHAR)) +sjis 8180 +SELECT STR_TO_DATE(CAST(_utf8'2001÷01÷01' AS CHAR),CAST(_utf8'%Y÷%m÷%d' AS CHAR)); +STR_TO_DATE(CAST(_utf8'2001÷01÷01' AS CHAR),CAST(_utf8'%Y÷%m÷%d' AS CHAR)) +2001-01-01 +CREATE TABLE t1 AS SELECT REPEAT(' ', 64) AS subject, REPEAT(' ',64) AS pattern LIMIT 0; +SHOW COLUMNS FROM t1; +Field Type Null Key Default Extra +subject varchar(64) NO +pattern varchar(64) NO +INSERT INTO t1 VALUES (_utf8'2001÷01÷01',_utf8'%Y÷%m÷%d'); +SELECT HEX(subject),HEX(pattern),STR_TO_DATE(subject, pattern) FROM t1; +HEX(subject) HEX(pattern) STR_TO_DATE(subject, pattern) +323030318180303181803031 25598180256D81802564 2001-01-01 00:00:00 +DROP TABLE t1; SET collation_connection='sjis_bin'; create table t1 select repeat('a',4000) a; delete from t1; diff --git a/mysql-test/r/ctype_ucs.result b/mysql-test/r/ctype_ucs.result index f73ea4bdbee..20aabdb528b 100644 --- a/mysql-test/r/ctype_ucs.result +++ b/mysql-test/r/ctype_ucs.result @@ -804,6 +804,25 @@ a hex(b) c 3 F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2 4 F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2F1F2 DROP TABLE t1; +# +# MDEV-4842 STR_TO_DATE does not work with UCS2/UTF16/UTF32 +# +SELECT @@character_set_connection, HEX(CAST(_utf8'÷' AS CHAR)); +@@character_set_connection HEX(CAST(_utf8'÷' AS CHAR)) +ucs2 00F7 +SELECT STR_TO_DATE(CAST(_utf8'2001÷01÷01' AS CHAR),CAST(_utf8'%Y÷%m÷%d' AS CHAR)); +STR_TO_DATE(CAST(_utf8'2001÷01÷01' AS CHAR),CAST(_utf8'%Y÷%m÷%d' AS CHAR)) +2001-01-01 +CREATE TABLE t1 AS SELECT REPEAT(' ', 64) AS subject, REPEAT(' ',64) AS pattern LIMIT 0; +SHOW COLUMNS FROM t1; +Field Type Null Key Default Extra +subject varchar(64) NO +pattern varchar(64) NO +INSERT INTO t1 VALUES (_utf8'2001÷01÷01',_utf8'%Y÷%m÷%d'); +SELECT HEX(subject),HEX(pattern),STR_TO_DATE(subject, pattern) FROM t1; +HEX(subject) HEX(pattern) STR_TO_DATE(subject, pattern) +003200300030003100F70030003100F700300031 0025005900F70025006D00F700250064 2001-01-01 00:00:00 +DROP TABLE t1; SET NAMES latin1; SET collation_connection='ucs2_bin'; create table t1 select repeat('a',4000) a; diff --git a/mysql-test/r/ctype_utf8.result b/mysql-test/r/ctype_utf8.result index ad8e852979b..9643e1c400d 100644 --- a/mysql-test/r/ctype_utf8.result +++ b/mysql-test/r/ctype_utf8.result @@ -977,6 +977,25 @@ ss u,ü ue drop table t1; +# +# MDEV-4842 STR_TO_DATE does not work with UCS2/UTF16/UTF32 +# +SELECT @@character_set_connection, HEX(CAST(_utf8'÷' AS CHAR)); +@@character_set_connection HEX(CAST(_utf8'÷' AS CHAR)) +utf8 C3B7 +SELECT STR_TO_DATE(CAST(_utf8'2001÷01÷01' AS CHAR),CAST(_utf8'%Y÷%m÷%d' AS CHAR)); +STR_TO_DATE(CAST(_utf8'2001÷01÷01' AS CHAR),CAST(_utf8'%Y÷%m÷%d' AS CHAR)) +2001-01-01 +CREATE TABLE t1 AS SELECT REPEAT(' ', 64) AS subject, REPEAT(' ',64) AS pattern LIMIT 0; +SHOW COLUMNS FROM t1; +Field Type Null Key Default Extra +subject varchar(64) NO +pattern varchar(64) NO +INSERT INTO t1 VALUES (_utf8'2001÷01÷01',_utf8'%Y÷%m÷%d'); +SELECT HEX(subject),HEX(pattern),STR_TO_DATE(subject, pattern) FROM t1; +HEX(subject) HEX(pattern) STR_TO_DATE(subject, pattern) +32303031C3B73031C3B73031 2559C3B7256DC3B72564 2001-01-01 00:00:00 +DROP TABLE t1; SET collation_connection='utf8_bin'; create table t1 select repeat('a',4000) a; delete from t1; diff --git a/mysql-test/t/ctype_latin1.test b/mysql-test/t/ctype_latin1.test index 5d1acf107d7..ec9b836a78b 100644 --- a/mysql-test/t/ctype_latin1.test +++ b/mysql-test/t/ctype_latin1.test @@ -82,6 +82,7 @@ select 'a' regexp 'A' collate latin1_bin; SET collation_connection='latin1_swedish_ci'; -- source include/ctype_filesort.inc -- source include/ctype_like_escape.inc +-- source include/ctype_str_to_date.inc SET collation_connection='latin1_bin'; -- source include/ctype_filesort.inc -- source include/ctype_like_escape.inc diff --git a/mysql-test/t/ctype_sjis.test b/mysql-test/t/ctype_sjis.test index f45e6ab9b54..a988c07ebe0 100644 --- a/mysql-test/t/ctype_sjis.test +++ b/mysql-test/t/ctype_sjis.test @@ -69,6 +69,7 @@ SET collation_connection='sjis_japanese_ci'; -- source include/ctype_innodb_like.inc -- source include/ctype_like_escape.inc -- source include/ctype_like_range_f1f2.inc +-- source include/ctype_str_to_date.inc SET collation_connection='sjis_bin'; -- source include/ctype_filesort.inc -- source include/ctype_innodb_like.inc diff --git a/mysql-test/t/ctype_ucs.test b/mysql-test/t/ctype_ucs.test index 9f5b4153bce..343adcd5712 100644 --- a/mysql-test/t/ctype_ucs.test +++ b/mysql-test/t/ctype_ucs.test @@ -421,6 +421,7 @@ SET collation_connection='ucs2_general_ci'; -- source include/ctype_like_escape.inc -- source include/ctype_german.inc -- source include/ctype_like_range_f1f2.inc +-- source include/ctype_str_to_date.inc SET NAMES latin1; SET collation_connection='ucs2_bin'; -- source include/ctype_filesort.inc diff --git a/mysql-test/t/ctype_utf8.test b/mysql-test/t/ctype_utf8.test index 0b90f222593..0d104cae9c9 100644 --- a/mysql-test/t/ctype_utf8.test +++ b/mysql-test/t/ctype_utf8.test @@ -714,6 +714,7 @@ SET collation_connection='utf8_general_ci'; -- source include/ctype_filesort.inc -- source include/ctype_like_escape.inc -- source include/ctype_german.inc +-- source include/ctype_str_to_date.inc SET collation_connection='utf8_bin'; -- source include/ctype_filesort.inc -- source include/ctype_like_escape.inc |