Introduce IndexAM fields for parallel vacuum.
Amit Kapila <akapila@postgresql.org>
Introduce IndexAM fields for parallel vacuum. 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 Reviewed-by: Dilip Kumar, Amit Kapila, Tomas Vondra and Robert Haas Discussion: https://postgr.es/m/CAD21AoDTPMgzSkV4E3SFo1CH_x50bf5PqZFQf4jmqjk-C03BWg@mail.gmail.com https://postgr.es/m/CAA4eK1LmcD5aPogzwim5Nn58Ki+74a6Edghx4Wd8hAskvHaq5A@mail.gmail.com
Files
| Path | Change | +/− |
|---|---|---|
| contrib/bloom/blutils.c | modified | +4 −0 |
| doc/src/sgml/indexam.sgml | modified | +4 −0 |
| src/backend/access/brin/brin.c | modified | +4 −0 |
| src/backend/access/gin/ginutil.c | modified | +4 −0 |
| src/backend/access/gist/gist.c | modified | +4 −0 |
| src/backend/access/hash/hash.c | modified | +3 −0 |
| src/backend/access/nbtree/nbtree.c | modified | +3 −0 |
| src/backend/access/spgist/spgutils.c | modified | +4 −0 |
| src/include/access/amapi.h | modified | +4 −0 |
| src/include/commands/vacuum.h | modified | +38 −0 |
| src/test/modules/dummy_index_am/dummy_index_am.c | modified | +3 −0 |