aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>2014-04-14 15:27:32 +0300
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>2014-04-14 15:27:32 +0300
commite3e6e3af560116adc20cc9d6e75bfe82a45def60 (patch)
tree173924aadbefcb940c1203e02c01b24e7480646c /src
parent1bd3842163f2b44e29938b5ab158bb6a589ff10c (diff)
downloadpostgresql-e3e6e3af560116adc20cc9d6e75bfe82a45def60.tar.gz
postgresql-e3e6e3af560116adc20cc9d6e75bfe82a45def60.zip
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.
Diffstat (limited to 'src')
-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 115f2abc9e4..7dcc5cae476 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)