Re: power() function in Windows: "value out of range: underflow"

Robert Haas <robertmhaas@gmail.com>

From: Robert Haas <robertmhaas@gmail.com>
To: David Rowley <david.rowley@2ndquadrant.com>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, Huong Dangminh <huo-dangminh@ys.jp.nec.com>, Pg Hackers <pgsql-hackers@postgresql.org>, Akio Iwaasa <aki-iwaasa@vt.jp.nec.com>
Date: 2018-05-01T17:38:44Z
Lists: pgsql-bugs, pgsql-hackers
On Sun, Apr 29, 2018 at 7:24 PM, David Rowley
<david.rowley@2ndquadrant.com> wrote:
> I think we should back patch and try to be consistent about the
> power(float8 1.0, 'NaN') and power('NaN', float8 0.0) cases. The
> archives don't show any complaints about power() with NaN until this
> one, so I imagine the number of people affected by this is small.

I agree that this is not likely to affect a lot of people -- but the
question isn't how many people will be affected but rather, of those
that are, how many of them will be pleased rather than displeased by a
change.  I would argue that the results have to be unambiguously wrong
in the back-branches to justify a change there, and this doesn't
appear to meet that standard. I would guess that the number of people
who use NaN is very small, but those people have probably adapted
their application to the behavior they are getting currently.

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


Commits

  1. Revert back-branch changes in power()'s behavior for NaN inputs.

  2. Avoid wrong results for power() with NaN input on more platforms.

  3. Avoid wrong results for power() with NaN input on some platforms.