pgsql: Don't try to read a multi-GB pg_stat_statements file in one call - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: Don't try to read a multi-GB pg_stat_statements file in one call
Date
Msg-id E1mhK1k-0002lc-Cn@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Don't try to read a multi-GB pg_stat_statements file in one call.

Windows fails on a request to read() more than INT_MAX bytes,
and perhaps other platforms could have similar issues.  Let's
adjust this code to read at most 1GB per call.

(One would not have thought the file could get that big, but now
we have a field report of trouble, so it can.  We likely ought to
add some mechanism to limit the size of the query-texts file
separately from the size of the hash table.  That is not this
patch, though.)

Per bug #17254 from Yusuke Egashira.  It's been like this for
awhile, so back-patch to all supported branches.

Discussion: https://postgr.es/m/17254-a926c89dc03375c2@postgresql.org

Branch
------
REL_14_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/7104e0b2457d1dc2d0e1c97e5053706e64a0fc50

Modified Files
--------------
contrib/pg_stat_statements/pg_stat_statements.c | 45 ++++++++++++++++---------
1 file changed, 29 insertions(+), 16 deletions(-)


pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: pgsql: Doc: improve README files associated with TAP tests.
Next
From: Michael Paquier
Date:
Subject: pgsql: Preserve opclass parameters across REINDEX CONCURRENTLY