Обсуждение: pgsql: Make some minor improvements in memory-context infrastructure.

Поиск
Список
Период
Сортировка

pgsql: Make some minor improvements in memory-context infrastructure.

От
Tom Lane
Дата:
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

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/9c911ec065df0f660e3add65d986f95928914375

Modified Files
--------------
src/backend/utils/hash/dynahash.c | 13 ++----
src/backend/utils/mmgr/mcxt.c     | 83 +++++++++++++++++++++++----------------
src/include/utils/palloc.h        |  2 +
3 files changed, 56 insertions(+), 42 deletions(-)