| From: | Michael Paquier <michael(at)paquier(dot)xyz> |
|---|---|
| To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
| Cc: | pgsql-committers(at)lists(dot)postgresql(dot)org |
| Subject: | Re: pgsql: Fix behavior of exp() and power() for infinity inputs. |
| Date: | 2020-06-15 03:42:59 |
| Message-ID: | 20200615034259.GD52676@paquier.xyz |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-committers |
On Sun, Jun 14, 2020 at 03:00:11PM +0000, Tom Lane wrote:
> Fix behavior of exp() and power() for infinity inputs.
>
> Previously, these functions tended to throw underflow errors for
> negative-infinity exponents. The correct thing per POSIX is to
> return 0, so let's do that instead. (Note that the SQL standard
> is silent on such issues, as it lacks the concepts of either Inf
> or NaN; so our practice is to follow POSIX whenever a corresponding
> C-library function exists.)
>
> Also, add a bunch of test cases verifying that exp() and power()
> actually do follow POSIX for Inf and NaN inputs. While this patch
> should guarantee that exp() passes the tests, power() will not unless
> the platform's pow(3) is fully POSIX-compliant. I already know that
> gaur fails some of the tests, and I am suspicious that the Windows
> animals will too; the extent of compliance of other old platforms
> remains to be seen. We might choose to drop failing test cases, or
> to work harder at overriding pow(3) for these cases, but first let's
> see just how good or bad the situation is.
The Windows servers don't actually cay anything here, but sidewinder
and hoverfly complain, on top of gaur of course:
https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=hoverfly&dt=2020-06-14%2015%3A05%3A33
https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=sidewinder&dt=2020-06-14%2018%3A45%3A28
--
Michael
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2020-06-15 04:10:52 | Re: pgsql: Fix behavior of exp() and power() for infinity inputs. |
| Previous Message | Thomas Munro | 2020-06-15 01:29:42 | pgsql: Doc: Add references for SI and SSI. |