pgsql: Add new StringInfo APIs to allow callers to specify the buffer s

From: Tatsuo Ishii <ishii(at)postgresql(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Add new StringInfo APIs to allow callers to specify the buffer s
Date: 2025-01-10 23:24:42
Message-ID: E1tWOMs-000tr1-7T@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Add new StringInfo APIs to allow callers to specify the buffer size.

Previously StringInfo APIs allocated buffers with fixed initial
allocation size of 1024 bytes. This may be too large and inappropriate
for some callers that can do with smaller memory buffers. To fix this,
introduce new APIs that allow callers to specify initial buffer size.

extern StringInfo makeStringInfoExt(int initsize);
extern void initStringInfoExt(StringInfo str, int initsize);

Existing APIs (makeStringInfo() and initStringInfo()) are changed to
call makeStringInfoExt and initStringInfoExt respectively (via inline
helper functions makeStringInfoInternal and initStringInfoInternal),
with the default buffer size of 1024.

Reviewed-by: Nathan Bossart, David Rowley, Michael Paquier, Gurjeet Singh
Discussion: https://postgr.es/m/20241225.123704.1194662271286702010.ishii%40postgresql.org

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/a9dcbb4d5c00b703e727e14055ed70c525a86418

Modified Files
--------------
src/common/stringinfo.c | 71 +++++++++++++++++++++++++++++++++++++-------
src/include/lib/stringinfo.h | 29 +++++++++++++++++-
2 files changed, 89 insertions(+), 11 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message David Rowley 2025-01-11 00:46:15 pgsql: Make verify_compact_attribute available in non-assert builds
Previous Message Melanie Plageman 2025-01-10 23:22:56 pgsql: Consolidate docs for vacuum-related GUCs in new subsection