summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHeikki Linnakangas2014-04-14 12:27:32 +0000
committerHeikki Linnakangas2014-04-14 12:27:32 +0000
commite3e6e3af560116adc20cc9d6e75bfe82a45def60 (patch)
tree173924aadbefcb940c1203e02c01b24e7480646c
parent1bd3842163f2b44e29938b5ab158bb6a589ff10c (diff)
Remove dead checks for invalid left page in ginDeletePage.
In some places, the function assumes the left page is valid, and in others, it checks if it is valid. Remove all the checks.
-rw-r--r--src/backend/access/gin/ginvacuum.c36
1 files changed, 12 insertions, 24 deletions
diff --git a/src/backend/access/gin/ginvacuum.c b/src/backend/access/gin/ginvacuum.c
index 115f2abc9e..7dcc5cae47 100644
--- a/src/backend/access/gin/ginvacuum.c
+++ b/src/backend/access/gin/ginvacuum.c
@@ -285,8 +285,7 @@ ginDeletePage(GinVacuumState *gvs, BlockNumber deleteBlkno, BlockNumber leftBlkn
GinPageGetOpaque(page)->flags = GIN_DELETED;
MarkBufferDirty(pBuffer);
- if (leftBlkno != InvalidBlockNumber)
- MarkBufferDirty(lBuffer);
+ MarkBufferDirty(lBuffer);
MarkBufferDirty(dBuffer);
if (RelationNeedsWAL(gvs->index))
@@ -294,7 +293,6 @@ ginDeletePage(GinVacuumState *gvs, BlockNumber deleteBlkno, BlockNumber leftBlkn
XLogRecPtr recptr;
XLogRecData rdata[4];
ginxlogDeletePage data;
- int n;
data.node = gvs->index->rd_node;
data.blkno = deleteBlkno;
@@ -315,32 +313,22 @@ ginDeletePage(GinVacuumState *gvs, BlockNumber deleteBlkno, BlockNumber leftBlkn
rdata[1].len = 0;
rdata[1].next = rdata + 2;
- if (leftBlkno != InvalidBlockNumber)
- {
- rdata[2].buffer = lBuffer;
- rdata[2].buffer_std = FALSE;
- rdata[2].data = NULL;
- rdata[2].len = 0;
- rdata[2].next = rdata + 3;
- n = 3;
- }
- else
- n = 2;
+ rdata[2].buffer = lBuffer;
+ rdata[2].buffer_std = FALSE;
+ rdata[2].data = NULL;
+ rdata[2].len = 0;
+ rdata[2].next = rdata + 3;
- rdata[n].buffer = InvalidBuffer;
- rdata[n].buffer_std = FALSE;
- rdata[n].len = sizeof(ginxlogDeletePage);
- rdata[n].data = (char *) &data;
- rdata[n].next = NULL;
+ rdata[3].buffer = InvalidBuffer;
+ rdata[3].buffer_std = FALSE;
+ rdata[3].len = sizeof(ginxlogDeletePage);
+ rdata[3].data = (char *) &data;
+ rdata[3].next = NULL;
recptr = XLogInsert(RM_GIN_ID, XLOG_GIN_DELETE_PAGE, rdata);
PageSetLSN(page, recptr);
PageSetLSN(parentPage, recptr);
- if (leftBlkno != InvalidBlockNumber)
- {
- page = BufferGetPage(lBuffer);
- PageSetLSN(page, recptr);
- }
+ PageSetLSN(BufferGetPage(lBuffer), recptr);
}
if (!isParentRoot)