Introduce IndexAM fields for parallel vacuum

Enterprise / PostgreSQL - Amit Kapila [postgresql.org] - 15 January 2020 01:54 EST

Introduce new fields amusemaintenanceworkmem and amparallelvacuumoptions in IndexAmRoutine for parallel vacuum. The amusemaintenanceworkmem tells whether a particular IndexAM uses maintenance_work_mem or not. This will help in controlling the memory used by individual workers as otherwise, each worker can consume memory equal to maintenance_work_mem. The amparallelvacuumoptions tell whether a particular IndexAM participates in a parallel vacuum and if so in which phase (bulkdelete, vacuumcleanup) of
vacuum.

Author: Masahiko Sawada and Amit Kapila

4d8a8d0c73 Introduce IndexAM fields for parallel vacuum.
contrib/bloom/blutils.c | 4 +++
doc/src/sgml/indexam.sgml | 4 +++
src/backend/access/brin/brin.c | 4 +++
src/backend/access/gin/ginutil.c | 4 +++
src/backend/access/gist/gist.c | 4 +++
src/backend/access/hash/hash.c | 3 ++
src/backend/access/nbtree/nbtree.c | 3 ++
src/backend/access/spgist/spgutils.c | 4 +++
src/include/access/amapi.h | 4 +++
src/include/commands/vacuum.h | 38 ++++++++++++++++++++++++
src/test/modules/dummy_index_am/dummy_index_am.c | 3 ++
11 files changed, 75 insertions(+)

Upstream: git.postgresql.org


  • Share