From faee5a12ecf13190d7ca11d6dcc7078e494f46ca Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Sun, 25 Aug 2019 12:14:50 -0400 Subject: [PATCH] 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 --- src/test/regress/expected/circle.out | 15 ++++++++------- src/test/regress/sql/circle.sql | 5 +++-- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/src/test/regress/expected/circle.out b/src/test/regress/expected/circle.out index 756c7e37ef..218300f126 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 10e51d780e..7e582c6c29 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);