git.postgresql.org Git - postgresql.git/commit

git projects / postgresql.git / commit
? search:
summary | shortlog | log | commit | commitdiff | tree
(parent: 9e38c2b) | patch
Remove underflow error in float division with infinite divisor.
Wed, 4 Nov 2020 23:11:15 +0000 (18:11 -0500)
Wed, 4 Nov 2020 23:11:15 +0000 (18:11 -0500)
commit fac83dbd6fe1ac3d4125bfa39f287f95bffe6cda
Remove underflow error in float division with infinite divisor.

float4_div and float8_div correctly produced zero for zero divided
by infinity, but threw an underflow error for nonzero finite values
divided by infinity. This seems wrong; at the very least it's
inconsistent with the behavior recently implemented for numeric
infinities. Remove the error and allow zero to be returned.

This patch also removes a useless isinf() test from the overflow
checks in these functions (non-Inf divided by Inf can't produce Inf).

Extracted from a larger patch; this seems significant outside the
context of geometric operators, so it deserves its own commit.

Kyotaro Horiguchi

Discussion: https://postgr.es/m/CAGf+fX70rWFOk5cd00uMfa__0yP+vtQg5ck7c2Onb-Yczp0URA@mail.gmail.com
src/include/utils/float.h diff | blob | blame | history
src/test/regress/expected/float4-misrounded-input.out diff | blob | blame | history
src/test/regress/expected/float4.out diff | blob | blame | history
src/test/regress/expected/float8.out diff | blob | blame | history
src/test/regress/sql/float4.sql diff | blob | blame | history
src/test/regress/sql/float8.sql diff | blob | blame | history
This is the main PostgreSQL git repository.
RSS Atom

AltStyle によって変換されたページ (->オリジナル) /