summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorunknown <ramil/ram@mysql.com/ramil.myoffice.izhnet.ru>2007-02-27 11:01:58 +0400
committerunknown <ramil/ram@mysql.com/ramil.myoffice.izhnet.ru>2007-02-27 11:01:58 +0400
commit9bbd385a8952159b0d592acbbbd0f66c30c29e77 (patch)
tree11063d085beccd779cb83e1b56634072b0033d72
parentf80babd61720298f8e3862f21b1851203cbcf871 (diff)
downloadmariadb-git-9bbd385a8952159b0d592acbbbd0f66c30c29e77.tar.gz
Fix for bug #25834: Test failure in "func_group"
Round the results of std() for some calls with double arguments to avoid double math precision problems.
-rw-r--r--mysql-test/r/func_group.result30
-rw-r--r--mysql-test/t/func_group.test6
2 files changed, 18 insertions, 18 deletions
diff --git a/mysql-test/r/func_group.result b/mysql-test/r/func_group.result
index d18837aed41..e421da1c462 100644
--- a/mysql-test/r/func_group.result
+++ b/mysql-test/r/func_group.result
@@ -1180,11 +1180,11 @@ i count(*) std(s1/s2)
1 4 0.00000000
2 4 0.00000000
3 4 0.00000000
-select i, count(*), std(o1/o2) from bug22555 group by i order by i;
-i count(*) std(o1/o2)
-1 4 0
-2 4 0
-3 4 0
+select i, count(*), round(std(o1/o2), 16) from bug22555 group by i order by i;
+i count(*) round(std(o1/o2), 16)
+1 4 0.0000000000000000
+2 4 0.0000000000000000
+3 4 0.0000000000000000
select i, count(*), std(e1/e2) from bug22555 group by i order by i;
i count(*) std(e1/e2)
1 4 0.00000000
@@ -1206,11 +1206,11 @@ i count(*) std(s1/s2)
1 4 0.000000000000000000000000000000
2 4 0.000000000000000000000000000000
3 4 0.000000000000000000000000000000
-select i, count(*), std(o1/o2) from bug22555 group by i order by i;
-i count(*) std(o1/o2)
-1 4 0
-2 4 0
-3 4 0
+select i, count(*), round(std(o1/o2), 16) from bug22555 group by i order by i;
+i count(*) round(std(o1/o2), 16)
+1 4 0.0000000000000000
+2 4 0.0000000000000000
+3 4 0.0000000000000000
select i, count(*), std(e1/e2) from bug22555 group by i order by i;
i count(*) std(e1/e2)
1 4 0.000000000000000000000000000000
@@ -1231,11 +1231,11 @@ i count(*) std(s1/s2)
1 4 0.000000000000000000000000000000
2 4 0.000000000000000000000000000000
3 4 0.000000000000000000000000000000
-select i, count(*), std(o1/o2) from bug22555 group by i order by i;
-i count(*) std(o1/o2)
-1 4 0
-2 4 0
-3 4 0
+select i, count(*), round(std(o1/o2), 16) from bug22555 group by i order by i;
+i count(*) round(std(o1/o2), 16)
+1 4 0.0000000000000000
+2 4 0.0000000000000000
+3 4 0.0000000000000000
select i, count(*), std(e1/e2) from bug22555 group by i order by i;
i count(*) std(e1/e2)
1 4 0.000000000000000000000000000000
diff --git a/mysql-test/t/func_group.test b/mysql-test/t/func_group.test
index a3b3fceaec5..b102148472a 100644
--- a/mysql-test/t/func_group.test
+++ b/mysql-test/t/func_group.test
@@ -747,7 +747,7 @@ insert into bug22555 values (1,53,78,53,78,53,78),(2,17,78,17,78,17,78),(3,18,76
insert into bug22555 values (1,53,78,53,78,53,78),(2,17,78,17,78,17,78),(3,18,76,18,76,18,76);
select i, count(*), std(s1/s2) from bug22555 group by i order by i;
-select i, count(*), std(o1/o2) from bug22555 group by i order by i;
+select i, count(*), round(std(o1/o2), 16) from bug22555 group by i order by i;
select i, count(*), std(e1/e2) from bug22555 group by i order by i;
select std(s1/s2) from bug22555;
select std(o1/o2) from bug22555;
@@ -755,14 +755,14 @@ select std(e1/e2) from bug22555;
set @saved_div_precision_increment=@@div_precision_increment;
set div_precision_increment=19;
select i, count(*), std(s1/s2) from bug22555 group by i order by i;
-select i, count(*), std(o1/o2) from bug22555 group by i order by i;
+select i, count(*), round(std(o1/o2), 16) from bug22555 group by i order by i;
select i, count(*), std(e1/e2) from bug22555 group by i order by i;
select round(std(s1/s2), 17) from bug22555;
select std(o1/o2) from bug22555;
select round(std(e1/e2), 17) from bug22555;
set div_precision_increment=20;
select i, count(*), std(s1/s2) from bug22555 group by i order by i;
-select i, count(*), std(o1/o2) from bug22555 group by i order by i;
+select i, count(*), round(std(o1/o2), 16) from bug22555 group by i order by i;
select i, count(*), std(e1/e2) from bug22555 group by i order by i;
select round(std(s1/s2), 17) from bug22555;
select std(o1/o2) from bug22555;