Allow specifying initial and maximum segment sizes for DSA.
authorMasahiko Sawada <msawada@postgresql.org>
Wed, 27 Mar 2024 02:43:29 +0000 (11:43 +0900)
committerMasahiko Sawada <msawada@postgresql.org>
Wed, 27 Mar 2024 02:43:29 +0000 (11:43 +0900)
commitbb952c8c8b13279eca039499249cb5dc60991603
treeba7cc3ced86501cb0da23a66b9170ffae19dcf6c
parent1f42337be535243e665f85916ce21b2d85d9f2b3
Allow specifying initial and maximum segment sizes for DSA.

Previously, the DSA segment size always started with 1MB and grew up
to DSA_MAX_SEGMENT_SIZE. It was inconvenient in certain scenarios,
such as when the caller desired a soft constraint on the total DSA
segment size, limiting it to less than 1MB.

This commit introduces the capability to specify the initial and
maximum DSA segment sizes when creating a DSA area, providing more
flexibility and control over memory usage.

Reviewed-by: John Naylor, Tomas Vondra
Discussion: https://postgr.es/m/CAD21AoAYGGC1ePjVX0H%2Bpp9rH%3D9vuPK19nNOiu12NprdV5TVJA%40mail.gmail.com
src/backend/utils/mmgr/dsa.c
src/include/utils/dsa.h