aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2019-08-25 12:14:50 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2019-08-25 12:14:50 -0400
commitfaee5a12ecf13190d7ca11d6dcc7078e494f46ca (patch)
tree5bbe9de743112431338122817620634e53d5582d /src
parentf493d98c167321e5d5c17dd7d795721045a81c97 (diff)
downloadpostgresql-faee5a12ecf13190d7ca11d6dcc7078e494f46ca.tar.gz
postgresql-faee5a12ecf13190d7ca11d6dcc7078e494f46ca.zip
Back off output precision in circle.sql regression test.
We were setting extra_float_digits = 0 to avoid platform-dependent output in this test, but that's still able to expose platform-specific roundoff behavior in some new test cases added by commit a3d284485, as reported by Peter Eisentraut. Reduce it to -1 to hide that. (Over in geometry.sql, we're using -3, which is an ancient decision dating to 337f73b1b. I wonder whether that's overkill now. But there's probably little value in trying to change it.) Back-patch to v12 where a3d284485 came in; there's no evidence that we have any platform-dependent issues here before that. Discussion: https://postgr.es/m/15551268-e224-aa46-084a-124b64095ee3@2ndquadrant.com
Diffstat (limited to 'src')
-rw-r--r--src/test/regress/expected/circle.out15
-rw-r--r--src/test/regress/sql/circle.sql5
2 files changed, 11 insertions, 9 deletions
diff --git a/src/test/regress/expected/circle.out b/src/test/regress/expected/circle.out
index 756c7e37efc..218300f1263 100644
--- a/src/test/regress/expected/circle.out
+++ b/src/test/regress/expected/circle.out
@@ -1,8 +1,9 @@
--
-- CIRCLE
--
--- avoid bit-exact output here because operations may not be bit-exact.
-SET extra_float_digits = 0;
+-- Back off displayed precision a little bit to reduce platform-to-platform
+-- variation in results.
+SET extra_float_digits = -1;
CREATE TABLE CIRCLE_TBL (f1 circle);
INSERT INTO CIRCLE_TBL VALUES ('<(5,1),3>');
INSERT INTO CIRCLE_TBL VALUES ('<(1,2),100>');
@@ -113,12 +114,12 @@ SELECT '' as five, c1.f1 AS one, c2.f1 AS two, (c1.f1 <-> c2.f1) AS distance
five | one | two | distance
------+----------------+----------------+------------------
| <(3,5),0> | <(1,2),3> | 0.60555127546399
- | <(3,5),0> | <(5,1),3> | 1.47213595499958
+ | <(3,5),0> | <(5,1),3> | 1.4721359549996
| <(100,200),10> | <(100,1),115> | 74
- | <(100,200),10> | <(1,2),100> | 111.370729772479
- | <(1,3),5> | <(100,200),10> | 205.476756144497
+ | <(100,200),10> | <(1,2),100> | 111.37072977248
+ | <(1,3),5> | <(100,200),10> | 205.4767561445
| <(5,1),3> | <(100,200),10> | 207.51303816328
- | <(3,5),0> | <(100,200),10> | 207.793480159531
- | <(1,2),3> | <(100,200),10> | 208.370729772479
+ | <(3,5),0> | <(100,200),10> | 207.79348015953
+ | <(1,2),3> | <(100,200),10> | 208.37072977248
(8 rows)
diff --git a/src/test/regress/sql/circle.sql b/src/test/regress/sql/circle.sql
index 10e51d780e6..7e582c6c29d 100644
--- a/src/test/regress/sql/circle.sql
+++ b/src/test/regress/sql/circle.sql
@@ -2,8 +2,9 @@
-- CIRCLE
--
--- avoid bit-exact output here because operations may not be bit-exact.
-SET extra_float_digits = 0;
+-- Back off displayed precision a little bit to reduce platform-to-platform
+-- variation in results.
+SET extra_float_digits = -1;
CREATE TABLE CIRCLE_TBL (f1 circle);