From: | Peter Eisentraut <peter(dot)eisentraut(at)2ndquadrant(dot)com> |
---|---|
To: | pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | mingw32 floating point diff |
Date: | 2019-08-22 12:49:33 |
Message-ID: | 18e57de7-3b46-ecdb-a2f4-d7506397c93e@2ndquadrant.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 2019-08-20 14:59, Peter Eisentraut wrote:
> Running the regression tests on mingw32, I get the following diff in
> circle.out:
>
> @@ -111,8 +111,8 @@
> WHERE (c1.f1 < c2.f1) AND ((c1.f1 <-> c2.f1) > 0)
> ORDER BY distance, area(c1.f1), area(c2.f1);
> five | one | two | distance
> -------+----------------+----------------+------------------
> - | <(3,5),0> | <(1,2),3> | 0.60555127546399
> +------+----------------+----------------+-------------------
> + | <(3,5),0> | <(1,2),3> | 0.605551275463989
> | <(3,5),0> | <(5,1),3> | 1.47213595499958
> | <(100,200),10> | <(100,1),115> | 74
> | <(100,200),10> | <(1,2),100> | 111.370729772479
>
> I only get this on master/PG12, but not on PG11, so I suspect that the
> new floating-point output routines could be the root of the issue.
>
> This happens only with the 32-bit build (mingw32), but not with a 64-bit
> build (mingw64).
OK, the problem isn't the new output routines. The result of the
computations is actually different. The test itself is new in PG12.
The difference in output is due to the mingw32 target using -mfpmath=387
by default. If you build with -mfpmath=sse -msee, the tests pass again.
Do we care to do anything about this? Pick slightly different test data
perhaps?
--
Peter Eisentraut http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
From | Date | Subject | |
---|---|---|---|
Next Message | Paul Guo | 2019-08-22 13:13:20 | Re: standby recovery fails (tablespace related) (tentative patch and discussion) |
Previous Message | Kyotaro Horiguchi | 2019-08-22 12:06:06 | Re: [HACKERS] WAL logging problem in 9.4.3? |