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
This commit is contained in:
Tom Lane 2019-08-25 12:14:50 -04:00
parent f493d98c16
commit faee5a12ec
2 changed files with 11 additions and 9 deletions

View File

@ -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)

View File

@ -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);