aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/backend/access/gin/gininsert.c3
-rw-r--r--src/include/access/gin_private.h13
2 files changed, 11 insertions, 5 deletions
diff --git a/src/backend/access/gin/gininsert.c b/src/backend/access/gin/gininsert.c
index 125f3fb12d9..fb7b4ea1ac3 100644
--- a/src/backend/access/gin/gininsert.c
+++ b/src/backend/access/gin/gininsert.c
@@ -143,7 +143,8 @@ buildFreshLeafTuple(GinState *ginstate,
/*
* Initialize a new posting tree with the TIDs.
*/
- postingRoot = createPostingTree(ginstate->index, items, nitem);
+ postingRoot = createPostingTree(ginstate->index, items, nitem,
+ buildStats);
/* And save the root link in the result tuple */
GinSetPostingTree(res, postingRoot);
diff --git a/src/include/access/gin_private.h b/src/include/access/gin_private.h
index c1462ee2fe6..67636ab592e 100644
--- a/src/include/access/gin_private.h
+++ b/src/include/access/gin_private.h
@@ -533,10 +533,9 @@ extern void ginEntryFillRoot(GinBtree btree, Buffer root, Buffer lbuf, Buffer rb
extern IndexTuple ginPageGetLinkItup(Buffer buf);
/* gindatapage.c */
-extern uint32 ginMergeItemPointers(ItemPointerData *dst,
- ItemPointerData *a, uint32 na,
- ItemPointerData *b, uint32 nb);
-
+extern BlockNumber createPostingTree(Relation index,
+ ItemPointerData *items, uint32 nitems,
+ GinStatsData *buildStats);
extern void GinDataPageAddItemPointer(Page page, ItemPointer data, OffsetNumber offset);
extern void GinDataPageAddPostingItem(Page page, PostingItem *data, OffsetNumber offset);
extern void GinPageDeletePostingItem(Page page, OffsetNumber offset);
@@ -727,6 +726,12 @@ extern void ginHeapTupleFastCollect(GinState *ginstate,
extern void ginInsertCleanup(GinState *ginstate,
bool vac_delay, IndexBulkDeleteResult *stats);
+/* ginpostinglist.c */
+extern uint32 ginMergeItemPointers(ItemPointerData *dst,
+ ItemPointerData *a, uint32 na,
+ ItemPointerData *b, uint32 nb);
+
+
/*
* Merging the results of several gin scans compares item pointers a lot,
* so we want this to be inlined. But if the compiler doesn't support that,