From: Bruce Momjian <bruce@momjian.us>
To: Kevin Sweet <kevin@teews.com>
Cc: Alvaro Herrera <alvherre@alvh.no-ip.org>
Cc: pgsql-docs@lists.postgresql.org, Michael Meskes <meskes@postgresql.org>
Subject: Re: documentation describing the range of a number type 'integer' is incorrect
Date: Wed, 17 Aug 2022 15:59:37 -0400
Message-ID: <Yv1IqedeYKpj0dvD@momjian.us> (raw)
In-Reply-To: <41540ed2-5ef9-8b46-6706-9baeb58b8851@teews.com>
References: <202110221343.rgmrpm6sy3be@alvherre.pgsql>
<41540ed2-5ef9-8b46-6706-9baeb58b8851@teews.com>
On Fri, Oct 22, 2021 at 11:55:33AM -0700, Kevin Sweet wrote:
> The bugs team agreed that it's a bug. The documentation accurately represents
> the buggy code. I thought you might want to update the doc when the bug is
> fixed.
This was fixed in this commit:
commit 5fcf3945bd
Author: John Naylor <john.naylor@postgresql.org>
Date: Fri Jul 30 13:50:23 2021 -0400
Fix range check in ECPG numeric to int conversion
The previous coding guarded against -INT_MAX instead of INT_MIN,
leading to -2147483648 being rejected as out of range.
Per bug #17128 from Kevin Sweet
Discussion: https://www.postgresql.org/message-id/flat/17128-55a8a879727a3e3a%40postgresql.org
Reviewed-by: Tom Lane
Backpatch to all supported branches
This was backpatched to all branches, so any release after July 30, 2021
should have this fix. I don't see any docs that need adjusting.
---------------------------------------------------------------------------
>
>
> On 10/22/21 6:43 AM, Alvaro Herrera wrote:
>
> On 2021-Jul-29, PG Doc comments form wrote:
>
>
> https://www.postgresql.org/docs/13/datatype-numeric.html says that the range
> of a numeric type integer is -2147483648 to +2147483647 but
> PGTYPESnumeric_to_int considers -2147483648 (a perfectly valid 32-bit
> integer) to be invalid because it compares to -INT_MAX instead of INT_MIN or
> (-INT_MAX - 1). This goes back to the initial commit in the git repo for
> src/interfaces/ecpg/pgtypeslib/numeric.c. And doc/src/sgml/ecpg.sgml
> documents the min being -INT_MAX.
>
> This sounds like an ECPG bug, not a documentation problem.
>
>
>
--
Bruce Momjian <bruce@momjian.us> https://momjian.us
EDB https://enterprisedb.com
Indecision is a decision. Inaction is an action. Mark Batterson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-docs@postgresql.org
Cc: bruce@momjian.us, kevin@teews.com, alvherre@alvh.no-ip.org, meskes@postgresql.org
Subject: Re: documentation describing the range of a number type 'integer' is incorrect
In-Reply-To: <Yv1IqedeYKpj0dvD@momjian.us>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox