Accommodate very large dshash tables.

Nathan Bossart <nathan@postgresql.org>

Commit: 2a74023221f9b9e484611581542c14fc6ef6d239
Author: Nathan Bossart <nathan@postgresql.org>
Date: 2024-12-17T21:24:45Z
Releases: 16.7
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