diff options
author | Alexander Barkov <bar@mariadb.org> | 2016-02-10 10:03:47 +0400 |
---|---|---|
committer | Alexander Barkov <bar@mariadb.org> | 2016-02-10 10:03:47 +0400 |
commit | a9a08b1e2f5b7a9e3ab7c7f75c768389b1d8238f (patch) | |
tree | 94f9f713741df49928d92c8bf8c440874d9a6bd1 | |
parent | 3c5c04bd2bccbfeb62a86bdc5610b1dcea378dd3 (diff) | |
download | mariadb-git-a9a08b1e2f5b7a9e3ab7c7f75c768389b1d8238f.tar.gz |
MDEV-9371 select insert('a',2,1,'b') doesn't return expected 'a'mariadb-5.5.48
-rw-r--r-- | mysql-test/r/ctype_utf8.result | 7 | ||||
-rw-r--r-- | mysql-test/r/ctype_utf8mb4.result | 2 | ||||
-rw-r--r-- | mysql-test/r/ctype_utf8mb4_heap.result | 2 | ||||
-rw-r--r-- | mysql-test/r/ctype_utf8mb4_innodb.result | 2 | ||||
-rw-r--r-- | mysql-test/r/ctype_utf8mb4_myisam.result | 2 | ||||
-rw-r--r-- | mysql-test/r/func_str.result | 6 | ||||
-rw-r--r-- | mysql-test/t/ctype_utf8.test | 3 | ||||
-rw-r--r-- | sql/item_strfunc.cc | 2 |
8 files changed, 13 insertions, 13 deletions
diff --git a/mysql-test/r/ctype_utf8.result b/mysql-test/r/ctype_utf8.result index dfc872cc734..09bb5195b74 100644 --- a/mysql-test/r/ctype_utf8.result +++ b/mysql-test/r/ctype_utf8.result @@ -116,7 +116,7 @@ hex(a) STRCMP(a,'a') STRCMP(a,'a ') DROP TABLE t1; select insert('txs',2,1,'hi'),insert('is ',4,0,'a'),insert('txxxxt',2,4,'es'); insert('txs',2,1,'hi') insert('is ',4,0,'a') insert('txxxxt',2,4,'es') -this is a test +this is test select insert("aa",100,1,"b"),insert("aa",1,3,"b"); insert("aa",100,1,"b") insert("aa",1,3,"b") aa b @@ -5092,9 +5092,10 @@ SET sql_mode=default; SET NAMES utf8; CREATE TABLE t1 (a INT); INSERT INTO t1 VALUES (0), (0), (1), (0), (0); -SELECT COUNT(*) FROM t1, t1 t2 +SELECT COUNT(*) FROM t1, t1 t2 GROUP BY INSERT('', t2.a, t1.a, (@@global.max_binlog_size)); -ERROR 23000: Duplicate entry '107374182410737418241' for key 'group_key' +COUNT(*) +25 DROP TABLE t1; # # Bug#11764503 (Bug#57341) Query in EXPLAIN EXTENDED shows wrong characters diff --git a/mysql-test/r/ctype_utf8mb4.result b/mysql-test/r/ctype_utf8mb4.result index 29749d3f07b..448645ebbae 100644 --- a/mysql-test/r/ctype_utf8mb4.result +++ b/mysql-test/r/ctype_utf8mb4.result @@ -116,7 +116,7 @@ hex(a) STRCMP(a,'a') STRCMP(a,'a ') DROP TABLE t1; select insert('txs',2,1,'hi'),insert('is ',4,0,'a'),insert('txxxxt',2,4,'es'); insert('txs',2,1,'hi') insert('is ',4,0,'a') insert('txxxxt',2,4,'es') -this is a test +this is test select insert("aa",100,1,"b"),insert("aa",1,3,"b"); insert("aa",100,1,"b") insert("aa",1,3,"b") aa b diff --git a/mysql-test/r/ctype_utf8mb4_heap.result b/mysql-test/r/ctype_utf8mb4_heap.result index 5959205ad1e..a9a84821f5e 100644 --- a/mysql-test/r/ctype_utf8mb4_heap.result +++ b/mysql-test/r/ctype_utf8mb4_heap.result @@ -116,7 +116,7 @@ hex(a) STRCMP(a,'a') STRCMP(a,'a ') DROP TABLE t1; select insert('txs',2,1,'hi'),insert('is ',4,0,'a'),insert('txxxxt',2,4,'es'); insert('txs',2,1,'hi') insert('is ',4,0,'a') insert('txxxxt',2,4,'es') -this is a test +this is test select insert("aa",100,1,"b"),insert("aa",1,3,"b"); insert("aa",100,1,"b") insert("aa",1,3,"b") aa b diff --git a/mysql-test/r/ctype_utf8mb4_innodb.result b/mysql-test/r/ctype_utf8mb4_innodb.result index 4dcac1d9d7b..d8649d3238c 100644 --- a/mysql-test/r/ctype_utf8mb4_innodb.result +++ b/mysql-test/r/ctype_utf8mb4_innodb.result @@ -116,7 +116,7 @@ hex(a) STRCMP(a,'a') STRCMP(a,'a ') DROP TABLE t1; select insert('txs',2,1,'hi'),insert('is ',4,0,'a'),insert('txxxxt',2,4,'es'); insert('txs',2,1,'hi') insert('is ',4,0,'a') insert('txxxxt',2,4,'es') -this is a test +this is test select insert("aa",100,1,"b"),insert("aa",1,3,"b"); insert("aa",100,1,"b") insert("aa",1,3,"b") aa b diff --git a/mysql-test/r/ctype_utf8mb4_myisam.result b/mysql-test/r/ctype_utf8mb4_myisam.result index e07e3472a37..b0c673fdae5 100644 --- a/mysql-test/r/ctype_utf8mb4_myisam.result +++ b/mysql-test/r/ctype_utf8mb4_myisam.result @@ -116,7 +116,7 @@ hex(a) STRCMP(a,'a') STRCMP(a,'a ') DROP TABLE t1; select insert('txs',2,1,'hi'),insert('is ',4,0,'a'),insert('txxxxt',2,4,'es'); insert('txs',2,1,'hi') insert('is ',4,0,'a') insert('txxxxt',2,4,'es') -this is a test +this is test select insert("aa",100,1,"b"),insert("aa",1,3,"b"); insert("aa",100,1,"b") insert("aa",1,3,"b") aa b diff --git a/mysql-test/r/func_str.result b/mysql-test/r/func_str.result index 05d975b548b..5a7a13bacb6 100644 --- a/mysql-test/r/func_str.result +++ b/mysql-test/r/func_str.result @@ -203,7 +203,7 @@ CONCAT('"',CONCAT_WS('";"',repeat('a',60),repeat('b',60),repeat('c',60),repeat(' "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";"cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc";"dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd" select insert('txs',2,1,'hi'),insert('is ',4,0,'a'),insert('txxxxt',2,4,'es'); insert('txs',2,1,'hi') insert('is ',4,0,'a') insert('txxxxt',2,4,'es') -this is a test +this is test select replace('aaaa','a','b'),replace('aaaa','aa','b'),replace('aaaa','a','bb'),replace('aaaa','','b'),replace('bbbb','a','c'); replace('aaaa','a','b') replace('aaaa','aa','b') replace('aaaa','a','bb') replace('aaaa','','b') replace('bbbb','a','c') bbbb bb bbbbbbbb aaaa bbbb @@ -2335,7 +2335,7 @@ INSERT('abc', 3, 3, '1234') ab1234 SELECT INSERT('abc', 4, 3, '1234'); INSERT('abc', 4, 3, '1234') -abc1234 +abc SELECT INSERT('abc', 5, 3, '1234'); INSERT('abc', 5, 3, '1234') abc @@ -2625,7 +2625,7 @@ CREATE TABLE t1 ( a TEXT ); SELECT 'aaaaaaaaaaaaaa' INTO OUTFILE 'MYSQLTEST_VARDIR/tmp/bug58165.txt';; SELECT insert( substring_index( 'a', 'a', 'b' ), 1, 0, 'x' ); insert( substring_index( 'a', 'a', 'b' ), 1, 0, 'x' ) -x + Warnings: Warning 1292 Truncated incorrect INTEGER value: 'b' LOAD DATA INFILE 'MYSQLTEST_VARDIR/tmp/bug58165.txt' INTO TABLE t1;; diff --git a/mysql-test/t/ctype_utf8.test b/mysql-test/t/ctype_utf8.test index fd70292c6c8..a9b5cee11ce 100644 --- a/mysql-test/t/ctype_utf8.test +++ b/mysql-test/t/ctype_utf8.test @@ -1563,8 +1563,7 @@ SET NAMES utf8; SET NAMES utf8; CREATE TABLE t1 (a INT); INSERT INTO t1 VALUES (0), (0), (1), (0), (0); ---error ER_DUP_ENTRY -SELECT COUNT(*) FROM t1, t1 t2 +SELECT COUNT(*) FROM t1, t1 t2 GROUP BY INSERT('', t2.a, t1.a, (@@global.max_binlog_size)); DROP TABLE t1; diff --git a/sql/item_strfunc.cc b/sql/item_strfunc.cc index aca66fc29e0..94370d45cef 100644 --- a/sql/item_strfunc.cc +++ b/sql/item_strfunc.cc @@ -1212,7 +1212,7 @@ String *Item_func_insert::val_str(String *str) length= res->charpos((int) length, (uint32) start); /* Re-testing with corrected params */ - if (start > res->length()) + if (start + 1 > res->length()) // remember, start = args[1].val_int() - 1 return res; /* purecov: inspected */ // Wrong param; skip insert if (length > res->length() - start) length= res->length() - start; |