Accommodate very large dshash tables.

Nathan Bossart <nathan@postgresql.org>

Commit: 84dc1303c9631343c74ce0ad806fb8fd202336f7
Author: Nathan Bossart <nathan@postgresql.org>
Date: 2024-12-17T21:24:45Z
Releases: 14.16
Accommodate very large dshash tables.

If a dshash table grows very large (e.g., the dshash table for
cumulative statistics when there are millions of tables), resizing
it may fail with an error like:

	ERROR: invalid DSA memory alloc request size 1073741824

To fix, permit dshash resizing to allocate more than 1 GB by
providing the DSA_ALLOC_HUGE flag.

Reported-by: Andreas Scherbaum
Author: Matthias van de Meent
Reviewed-by: Cédric Villemain, Michael Paquier, Andres Freund
Discussion: https://postgr.es/m/80a12d59-0d5e-4c54-866c-e69cd6536471%40pgug.de
Backpatch-through: 13

Files

PathChange+/−
src/backend/lib/dshash.c modified +4 −2

Discussion