diff options
Diffstat (limited to 'src/backend/access/gin/gininsert.c')
-rw-r--r-- | src/backend/access/gin/gininsert.c | 21 |
1 files changed, 7 insertions, 14 deletions
diff --git a/src/backend/access/gin/gininsert.c b/src/backend/access/gin/gininsert.c index fb7b4ea1ac3..0a2883aae3d 100644 --- a/src/backend/access/gin/gininsert.c +++ b/src/backend/access/gin/gininsert.c @@ -81,7 +81,6 @@ addItemPointersToLeafTuple(GinState *ginstate, { /* posting list would be too big, convert to posting tree */ BlockNumber postingRoot; - GinPostingTreeScan *gdi; /* * Initialize posting tree with the old tuple's posting list. It's @@ -94,12 +93,9 @@ addItemPointersToLeafTuple(GinState *ginstate, buildStats); /* Now insert the TIDs-to-be-added into the posting tree */ - gdi = ginPrepareScanPostingTree(ginstate->index, postingRoot, FALSE); - gdi->btree.isBuild = (buildStats != NULL); - - ginInsertItemPointers(gdi, items, nitem, buildStats); - - pfree(gdi); + ginInsertItemPointers(ginstate->index, postingRoot, + items, nitem, + buildStats); /* And build a new posting-tree-only result tuple */ res = GinFormTuple(ginstate, attnum, key, category, NULL, 0, true); @@ -177,7 +173,7 @@ ginEntryInsert(GinState *ginstate, ginPrepareEntryScan(&btree, attnum, key, category, ginstate); - stack = ginFindLeafPage(&btree, NULL); + stack = ginFindLeafPage(&btree, GIN_ROOT_BLKNO, false); page = BufferGetPage(stack->buffer); if (btree.findItem(&btree, stack)) @@ -189,18 +185,15 @@ ginEntryInsert(GinState *ginstate, { /* add entries to existing posting tree */ BlockNumber rootPostingTree = GinGetPostingTree(itup); - GinPostingTreeScan *gdi; /* release all stack */ LockBuffer(stack->buffer, GIN_UNLOCK); freeGinBtreeStack(stack); /* insert into posting tree */ - gdi = ginPrepareScanPostingTree(ginstate->index, rootPostingTree, FALSE); - gdi->btree.isBuild = (buildStats != NULL); - ginInsertItemPointers(gdi, items, nitem, buildStats); - pfree(gdi); - + ginInsertItemPointers(ginstate->index, rootPostingTree, + items, nitem, + buildStats); return; } |