Improve overflow/underflow handling in regr_r2(). Commit 6498287696d improved corr()'s final function to cope with overflow/underflow in the final calculation, and clamped its result to [-1, 1] in case of roundoff error. Improve regr_r2() in a similar way, clamping its result to [0, 1].
Arguably this is a bug fix, but given the lack of prior complaints, refrain from back-patching, as we did with 6498287696d. Reported-by: Chengpeng Yan <[email protected]> Author: Chengpeng Yan <[email protected]> Reviewed-by: Dean Rasheed <[email protected]> Reviewed-by: Tom Lane <[email protected]> Discussion: https://postgr.es/m/[email protected] Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/d58ec50e0faae364fa59cdb88eba7e23b55ab583 Modified Files -------------- src/backend/utils/adt/float.c | 37 ++++++++++++++++++-- src/test/regress/expected/aggregates.out | 58 +++++++++++++++++++++----------- src/test/regress/sql/aggregates.sql | 19 ++++++++--- 3 files changed, 87 insertions(+), 27 deletions(-)
