Make some minor improvements in memory-context infrastructure.
authorTom Lane <tgl@sss.pgh.pa.us>
Fri, 14 Oct 2022 15:55:56 +0000 (11:55 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Fri, 14 Oct 2022 15:55:56 +0000 (11:55 -0400)
commit9c911ec065df0f660e3add65d986f95928914375
tree2c352600e5078023ba3ca93c45343deb6841d8ba
parent1b11561cc1de7596f6f7cb750743af94b9d168f7
Make some minor improvements in memory-context infrastructure.

We lack a version of repalloc() that supports MCXT_ALLOC_NO_OOM
semantics, so invent repalloc_extended() with the usual set of
flags.  repalloc_huge() becomes a legacy wrapper for that.

Also, fix dynahash.c so that it can support HASH_ENTER_NULL
requests when using the default palloc-based allocator.
The only reason it didn't do that already was the lack of the
MCXT_ALLOC_NO_OOM option when that code was written, ages ago.

While here, simplify a few overcomplicated tests in mcxt.c.

Discussion: https://postgr.es/m/2982579.1662416866@sss.pgh.pa.us
src/backend/utils/hash/dynahash.c
src/backend/utils/mmgr/mcxt.c
src/include/utils/palloc.h