Commit 6cbee65e authored by Tom Lane's avatar Tom Lane

Doc: document libpq's restriction to INT_MAX rows in a PGresult.

As long as PQntuples, PQgetvalue, etc, use "int" for row numbers, we're
pretty much stuck with this limitation.  The documentation formerly stated
that the result of PQntuples "might overflow on 32-bit operating systems",
which is just nonsense: that's not where the overflow would happen, and
if you did reach an overflow it would not be on a 32-bit machine, because
you'd have OOM'd long since.

Discussion: https://postgr.es/m/CA+FnnTxyLWyjY1goewmJNxC==HQCCF4fKkoCTa9qR36oRAHDPw@mail.gmail.com
parent 2e70d6b5
......@@ -3199,9 +3199,10 @@ void PQclear(PGresult *res);
<listitem>
<para>
Returns the number of rows (tuples) in the query result. Because
it returns an integer result, large result sets might overflow the
return value on 32-bit operating systems.
Returns the number of rows (tuples) in the query result.
(Note that <structname>PGresult</> objects are limited to no more
than <literal>INT_MAX</> rows, so an <type>int</> result is
sufficient.)
<synopsis>
int PQntuples(const PGresult *res);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment