summaryrefslogtreecommitdiff
path: root/src/include
diff options
context:
space:
mode:
authorTom Lane2017-02-01 21:13:30 +0000
committerTom Lane2017-02-01 21:13:30 +0000
commitab02896510e26e46b830c87eef2c03dd3c52c09e (patch)
tree7fa1029a989330f411bae9b018f1350ccefc90ac /src/include
parentbbd8550bce146f86e5e883f1232292a975c314fb (diff)
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/462.1485902736@sss.pgh.pa.us
Diffstat (limited to 'src/include')
-rw-r--r--src/include/catalog/indexing.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/include/catalog/indexing.h b/src/include/catalog/indexing.h
index 977dc9c7ca2..9d02666ed1b 100644
--- a/src/include/catalog/indexing.h
+++ b/src/include/catalog/indexing.h
@@ -35,6 +35,7 @@ extern void CatalogIndexInsert(CatalogIndexState indstate,
extern Oid CatalogTupleInsert(Relation heapRel, HeapTuple tup);
extern void CatalogTupleUpdate(Relation heapRel, ItemPointer otid,
HeapTuple tup);
+extern void CatalogTupleDelete(Relation heapRel, ItemPointer tid);
/*