Provide CatalogTupleDelete() as a wrapper around simple_heap_delete().

This extends the work done in commit 2f5c9d9c9 to provide a more nearly
complete abstraction layer hiding the details of index updating for catalog
changes.  That commit only invented abstractions for catalog inserts and
updates, leaving nearby code for catalog deletes still calling the
heap-level routines directly.  That seems rather ugly from here, and it
does little to help if we ever want to shift to a storage system in which
indexing work is needed at delete time.

Hence, create a wrapper function CatalogTupleDelete(), and replace calls
of simple_heap_delete() on catalog tuples with it.  There are now very
few direct calls of [simple_]heap_delete remaining in the tree.

Discussion: https://postgr.es/m/[email protected]

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/ab02896510e26e46b830c87eef2c03dd3c52c09e

Modified Files
--------------
src/backend/catalog/aclchk.c               |  6 ++++--
src/backend/catalog/dependency.c           |  4 ++--
src/backend/catalog/heap.c                 | 18 +++++++++---------
src/backend/catalog/index.c                |  2 +-
src/backend/catalog/indexing.c             | 16 ++++++++++++++++
src/backend/catalog/pg_collation.c         |  2 +-
src/backend/catalog/pg_constraint.c        |  2 +-
src/backend/catalog/pg_conversion.c        |  2 +-
src/backend/catalog/pg_db_role_setting.c   |  6 +++---
src/backend/catalog/pg_depend.c            |  6 +++---
src/backend/catalog/pg_enum.c              |  2 +-
src/backend/catalog/pg_largeobject.c       |  4 ++--
src/backend/catalog/pg_range.c             |  2 +-
src/backend/catalog/pg_shdepend.c          |  6 +++---
src/backend/commands/amcmds.c              |  2 +-
src/backend/commands/comment.c             |  8 ++++----
src/backend/commands/dbcommands.c          |  2 +-
src/backend/commands/event_trigger.c       |  2 +-
src/backend/commands/extension.c           |  2 +-
src/backend/commands/foreigncmds.c         |  6 +++---
src/backend/commands/functioncmds.c        |  8 ++++----
src/backend/commands/opclasscmds.c         |  8 ++++----
src/backend/commands/operatorcmds.c        |  2 +-
src/backend/commands/policy.c              |  2 +-
src/backend/commands/proclang.c            |  2 +-
src/backend/commands/publicationcmds.c     |  5 ++---
src/backend/commands/schemacmds.c          |  2 +-
src/backend/commands/seclabel.c            |  8 ++++----
src/backend/commands/sequence.c            |  2 +-
src/backend/commands/subscriptioncmds.c    |  2 +-
src/backend/commands/tablecmds.c           |  6 +++---
src/backend/commands/tablespace.c          |  2 +-
src/backend/commands/trigger.c             |  2 +-
src/backend/commands/tsearchcmds.c         | 14 +++++++-------
src/backend/commands/typecmds.c            |  2 +-
src/backend/commands/user.c                |  8 ++++----
src/backend/replication/logical/origin.c   |  2 +-
src/backend/rewrite/rewriteRemove.c        |  2 +-
src/backend/storage/large_object/inv_api.c |  4 ++--
src/include/catalog/indexing.h             |  1 +
40 files changed, 101 insertions(+), 83 deletions(-)


-- 
Sent via pgsql-committers mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-committers

Reply via email to