Thread: pgsql: Pass down table relation into more index relation functions

pgsql: Pass down table relation into more index relation functions

From
Andres Freund
Date:
Pass down table relation into more index relation functions

This is done in preparation for logical decoding on standby, which needs to
include whether visibility affecting WAL records are about a (user) catalog
table. Which is only known for the table, not the indexes.

It's also nice to be able to pass the heap relation to GlobalVisTestFor() in
vacuumRedirectAndPlaceholder().

Author: "Drouvot, Bertrand" <bertranddrouvot.pg@gmail.com>
Discussion: https://postgr.es/m/21b700c3-eecf-2e05-a699-f8c78dd31ec7@gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/61b313e47eb987682441c675724c22bf4363c9c4

Modified Files
--------------
contrib/amcheck/verify_nbtree.c            |  15 ++--
src/backend/access/gist/gist.c             |   5 +-
src/backend/access/gist/gistbuild.c        |   2 +-
src/backend/access/gist/gistutil.c         |   4 +-
src/backend/access/gist/gistxlog.c         |   5 +-
src/backend/access/heap/heapam.c           |   2 +-
src/backend/access/heap/heapam_handler.c   |   9 ++-
src/backend/access/heap/vacuumlazy.c       |   2 +
src/backend/access/heap/visibilitymap.c    |   3 +-
src/backend/access/nbtree/nbtinsert.c      |  91 ++++++++++++------------
src/backend/access/nbtree/nbtpage.c        | 109 +++++++++++++++--------------
src/backend/access/nbtree/nbtree.c         |   4 +-
src/backend/access/nbtree/nbtsearch.c      |  50 +++++++------
src/backend/access/nbtree/nbtsort.c        |   2 +-
src/backend/access/nbtree/nbtutils.c       |   7 +-
src/backend/access/spgist/spgvacuum.c      |   8 +--
src/backend/catalog/index.c                |   1 +
src/backend/commands/analyze.c             |   1 +
src/backend/commands/vacuumparallel.c      |   6 ++
src/backend/optimizer/util/plancat.c       |   2 +-
src/backend/utils/sort/tuplesortvariants.c |   5 +-
src/include/access/genam.h                 |   1 +
src/include/access/gist_private.h          |   7 +-
src/include/access/heapam_xlog.h           |   2 +-
src/include/access/nbtree.h                |  37 +++++-----
src/include/utils/tuplesort.h              |   4 +-
26 files changed, 214 insertions(+), 170 deletions(-)