]> granicus.if.org Git - postgresql/blobdiff - src/backend/access/gin/ginbtree.c
Revert no-op changes to BufferGetPage()
[postgresql] / src / backend / access / gin / ginbtree.c
index e593b2bbe9938ca5b2d160e57a16eb7e1ecaaef8..dc593c259fe7a3388520fca7cf94eb89d741c4cd 100644 (file)
@@ -36,7 +36,7 @@ ginTraverseLock(Buffer buffer, bool searchMode)
        int                     access = GIN_SHARE;
 
        LockBuffer(buffer, GIN_SHARE);
-       page = BufferGetPage(buffer, NULL, NULL, BGP_NO_SNAPSHOT_TEST);
+       page = BufferGetPage(buffer);
        if (GinPageIsLeaf(page))
        {
                if (searchMode == FALSE)
@@ -89,8 +89,8 @@ ginFindLeafPage(GinBtree btree, bool searchMode, Snapshot snapshot)
 
                stack->off = InvalidOffsetNumber;
 
-               page = BufferGetPage(stack->buffer, snapshot, btree->index,
-                                                        BGP_TEST_FOR_OLD_SNAPSHOT);
+               page = BufferGetPage(stack->buffer);
+               TestForOldSnapshot(snapshot, btree->index, page);
 
                access = ginTraverseLock(stack->buffer, searchMode);
 
@@ -116,8 +116,8 @@ ginFindLeafPage(GinBtree btree, bool searchMode, Snapshot snapshot)
 
                        stack->buffer = ginStepRight(stack->buffer, btree->index, access);
                        stack->blkno = rightlink;
-                       page = BufferGetPage(stack->buffer, snapshot, btree->index,
-                                                                BGP_TEST_FOR_OLD_SNAPSHOT);
+                       page = BufferGetPage(stack->buffer);
+                       TestForOldSnapshot(snapshot, btree->index, page);
 
                        if (!searchMode && GinPageIsIncompleteSplit(page))
                                ginFinishSplit(btree, stack, false, NULL);
@@ -163,7 +163,7 @@ Buffer
 ginStepRight(Buffer buffer, Relation index, int lockmode)
 {
        Buffer          nextbuffer;
-       Page            page = BufferGetPage(buffer, NULL, NULL, BGP_NO_SNAPSHOT_TEST);
+       Page            page = BufferGetPage(buffer);
        bool            isLeaf = GinPageIsLeaf(page);
        bool            isData = GinPageIsData(page);
        BlockNumber blkno = GinPageGetOpaque(page)->rightlink;
@@ -173,7 +173,7 @@ ginStepRight(Buffer buffer, Relation index, int lockmode)
        UnlockReleaseBuffer(buffer);
 
        /* Sanity check that the page we stepped to is of similar kind. */
-       page = BufferGetPage(nextbuffer, NULL, NULL, BGP_NO_SNAPSHOT_TEST);
+       page = BufferGetPage(nextbuffer);
        if (isLeaf != GinPageIsLeaf(page) || isData != GinPageIsData(page))
                elog(ERROR, "right sibling of GIN page is of different type");
 
@@ -245,7 +245,7 @@ ginFindParents(GinBtree btree, GinBtreeStack *stack)
        for (;;)
        {
                LockBuffer(buffer, GIN_EXCLUSIVE);
-               page = BufferGetPage(buffer, NULL, NULL, BGP_NO_SNAPSHOT_TEST);
+               page = BufferGetPage(buffer);
                if (GinPageIsLeaf(page))
                        elog(ERROR, "Lost path");
 
@@ -276,7 +276,7 @@ ginFindParents(GinBtree btree, GinBtreeStack *stack)
                                break;
                        }
                        buffer = ginStepRight(buffer, btree->index, GIN_EXCLUSIVE);
-                       page = BufferGetPage(buffer, NULL, NULL, BGP_NO_SNAPSHOT_TEST);
+                       page = BufferGetPage(buffer);
 
                        /* finish any incomplete splits, as above */
                        if (GinPageIsIncompleteSplit(page))
@@ -327,8 +327,7 @@ ginPlaceToPage(GinBtree btree, GinBtreeStack *stack,
                           void *insertdata, BlockNumber updateblkno,
                           Buffer childbuf, GinStatsData *buildStats)
 {
-       Page            page = BufferGetPage(stack->buffer, NULL, NULL,
-                                                                        BGP_NO_SNAPSHOT_TEST);
+       Page            page = BufferGetPage(stack->buffer);
        GinPlaceToPageRC rc;
        uint16          xlflags = 0;
        Page            childpage = NULL;
@@ -347,7 +346,7 @@ ginPlaceToPage(GinBtree btree, GinBtreeStack *stack,
        {
                Assert(BufferIsValid(childbuf));
                Assert(updateblkno != InvalidBlockNumber);
-               childpage = BufferGetPage(childbuf, NULL, NULL, BGP_NO_SNAPSHOT_TEST);
+               childpage = BufferGetPage(childbuf);
        }
 
        /*
@@ -459,8 +458,7 @@ ginPlaceToPage(GinBtree btree, GinBtreeStack *stack,
                data.flags = xlflags;
                if (childbuf != InvalidBuffer)
                {
-                       Page            childpage = BufferGetPage(childbuf, NULL, NULL,
-                                                                                                 BGP_NO_SNAPSHOT_TEST);
+                       Page            childpage = BufferGetPage(childbuf);
 
                        GinPageGetOpaque(childpage)->flags &= ~GIN_INCOMPLETE_SPLIT;
 
@@ -542,21 +540,14 @@ ginPlaceToPage(GinBtree btree, GinBtreeStack *stack,
                if (stack->parent == NULL)
                {
                        MarkBufferDirty(lbuffer);
-                       memcpy(BufferGetPage(stack->buffer, NULL, NULL,
-                                                                BGP_NO_SNAPSHOT_TEST),
-                                  newrootpg, BLCKSZ);
-                       memcpy(BufferGetPage(lbuffer, NULL, NULL, BGP_NO_SNAPSHOT_TEST),
-                                  newlpage, BLCKSZ);
-                       memcpy(BufferGetPage(rbuffer, NULL, NULL, BGP_NO_SNAPSHOT_TEST),
-                                  newrpage, BLCKSZ);
+                       memcpy(BufferGetPage(stack->buffer), newrootpg, BLCKSZ);
+                       memcpy(BufferGetPage(lbuffer), newlpage, BLCKSZ);
+                       memcpy(BufferGetPage(rbuffer), newrpage, BLCKSZ);
                }
                else
                {
-                       memcpy(BufferGetPage(stack->buffer, NULL, NULL,
-                                                                BGP_NO_SNAPSHOT_TEST),
-                                  newlpage, BLCKSZ);
-                       memcpy(BufferGetPage(rbuffer, NULL, NULL, BGP_NO_SNAPSHOT_TEST),
-                                  newrpage, BLCKSZ);
+                       memcpy(BufferGetPage(stack->buffer), newlpage, BLCKSZ);
+                       memcpy(BufferGetPage(rbuffer), newrpage, BLCKSZ);
                }
 
                /* write WAL record */
@@ -588,16 +579,10 @@ ginPlaceToPage(GinBtree btree, GinBtreeStack *stack,
                        XLogRegisterData((char *) &data, sizeof(ginxlogSplit));
 
                        recptr = XLogInsert(RM_GIN_ID, XLOG_GIN_SPLIT);
-                       PageSetLSN(BufferGetPage(stack->buffer, NULL, NULL,
-                                                                        BGP_NO_SNAPSHOT_TEST),
-                                          recptr);
-                       PageSetLSN(BufferGetPage(rbuffer, NULL, NULL,
-                                                                        BGP_NO_SNAPSHOT_TEST),
-                                          recptr);
+                       PageSetLSN(BufferGetPage(stack->buffer), recptr);
+                       PageSetLSN(BufferGetPage(rbuffer), recptr);
                        if (stack->parent == NULL)
-                               PageSetLSN(BufferGetPage(lbuffer, NULL, NULL,
-                                                                                BGP_NO_SNAPSHOT_TEST),
-                                                  recptr);
+                               PageSetLSN(BufferGetPage(lbuffer), recptr);
                        if (BufferIsValid(childbuf))
                                PageSetLSN(childpage, recptr);
                }
@@ -679,12 +664,11 @@ ginFinishSplit(GinBtree btree, GinBtreeStack *stack, bool freestack,
                 * page that has no downlink in the parent, and splitting it further
                 * would fail.
                 */
-               if (GinPageIsIncompleteSplit(BufferGetPage(parent->buffer, NULL, NULL,
-                                                                                                  BGP_NO_SNAPSHOT_TEST)))
+               if (GinPageIsIncompleteSplit(BufferGetPage(parent->buffer)))
                        ginFinishSplit(btree, parent, false, buildStats);
 
                /* move right if it's needed */
-               page = BufferGetPage(parent->buffer, NULL, NULL, BGP_NO_SNAPSHOT_TEST);
+               page = BufferGetPage(parent->buffer);
                while ((parent->off = btree->findChildPtr(btree, page, stack->blkno, parent->off)) == InvalidOffsetNumber)
                {
                        if (GinPageRightMost(page))
@@ -702,17 +686,15 @@ ginFinishSplit(GinBtree btree, GinBtreeStack *stack, bool freestack,
 
                        parent->buffer = ginStepRight(parent->buffer, btree->index, GIN_EXCLUSIVE);
                        parent->blkno = BufferGetBlockNumber(parent->buffer);
-                       page = BufferGetPage(parent->buffer, NULL, NULL, BGP_NO_SNAPSHOT_TEST);
+                       page = BufferGetPage(parent->buffer);
 
-                       if (GinPageIsIncompleteSplit(BufferGetPage(parent->buffer, NULL, NULL,
-                                                                                                          BGP_NO_SNAPSHOT_TEST)))
+                       if (GinPageIsIncompleteSplit(BufferGetPage(parent->buffer)))
                                ginFinishSplit(btree, parent, false, buildStats);
                }
 
                /* insert the downlink */
                insertdata = btree->prepareDownlink(btree, stack->buffer);
-               updateblkno = GinPageGetOpaque(BufferGetPage(stack->buffer, NULL, NULL,
-                                                                                                        BGP_NO_SNAPSHOT_TEST))->rightlink;
+               updateblkno = GinPageGetOpaque(BufferGetPage(stack->buffer))->rightlink;
                done = ginPlaceToPage(btree, parent,
                                                          insertdata, updateblkno,
                                                          stack->buffer, buildStats);
@@ -762,8 +744,7 @@ ginInsertValue(GinBtree btree, GinBtreeStack *stack, void *insertdata,
        bool            done;
 
        /* If the leaf page was incompletely split, finish the split first */
-       if (GinPageIsIncompleteSplit(BufferGetPage(stack->buffer, NULL, NULL,
-                                                                                          BGP_NO_SNAPSHOT_TEST)))
+       if (GinPageIsIncompleteSplit(BufferGetPage(stack->buffer)))
                ginFinishSplit(btree, stack, false, buildStats);
 
        done = ginPlaceToPage(btree, stack,