Re: pgsql: Fix behavior of exp() and power() for infinity inputs.
От | Michael Paquier |
---|---|
Тема | Re: pgsql: Fix behavior of exp() and power() for infinity inputs. |
Дата | |
Msg-id | 20200615034259.GD52676@paquier.xyz обсуждение исходный текст |
Ответ на | pgsql: Fix behavior of exp() and power() for infinity inputs. (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: pgsql: Fix behavior of exp() and power() for infinity inputs.
|
Список | 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
Вложения
В списке pgsql-committers по дате отправления: