summaryrefslogtreecommitdiff
path: root/mysql-test/t/func_concat.test
diff options
context:
space:
mode:
authorunknown <sergefp@mysql.com>2004-12-17 12:14:45 +0300
committerunknown <sergefp@mysql.com>2004-12-17 12:14:45 +0300
commitf7193b925455ede2b97ccde36c96732446d1db7e (patch)
treef7ea785d5b5af300f8d4c9b2b40248bf85ae34cf /mysql-test/t/func_concat.test
parentae6f147a4f65b0392e61c6d447523fa9b6db186f (diff)
downloadmariadb-git-f7193b925455ede2b97ccde36c96732446d1db7e.tar.gz
Fix for BUG#6825: When calculating Item_func_neg::max_length, add 1 for '-'.
For numeric constants we only need to add, since the parser doesn't produce negative numbers. For strings we only add (we actually could substract 1 if given string is a constant and it has '-number' form but we're not doing that because * we set max_length bigger then necessary in other cases as well. * the current solution is simpler and safer (bigger max_length is better then cutting out) mysql-test/r/func_concat.result: Test for BUG#6825 mysql-test/r/metadata.result: Ajusted results according to fix of bug BUG#6825:length(-1) = 2 , not 1 mysql-test/t/func_concat.test: Test for BUG#6825
Diffstat (limited to 'mysql-test/t/func_concat.test')
-rw-r--r--mysql-test/t/func_concat.test16
1 files changed, 16 insertions, 0 deletions
diff --git a/mysql-test/t/func_concat.test b/mysql-test/t/func_concat.test
index 0cf1502b10e..78818cdda4e 100644
--- a/mysql-test/t/func_concat.test
+++ b/mysql-test/t/func_concat.test
@@ -34,3 +34,19 @@ create table t1 (a char(4), b double, c date, d tinyint(4));
insert into t1 values ('AAAA', 105, '2003-03-01', 1);
select * from t1 where concat(A,C,B,D) = 'AAAA2003-03-011051';
drop table t1;
+
+# BUG#6825
+select 'a' union select concat('a', -4);
+select 'a' union select concat('a', -4.5);
+
+select 'a' union select concat('a', -(4 + 1));
+select 'a' union select concat('a', 4 - 5);
+
+select 'a' union select concat('a', -'3');
+select 'a' union select concat('a', -concat('3',4));
+
+select 'a' union select concat('a', -0);
+select 'a' union select concat('a', -0.0);
+
+select 'a' union select concat('a', -0.0000);
+