diff options
author | Heikki Linnakangas <heikki.linnakangas@iki.fi> | 2014-04-14 15:27:32 +0300 |
---|---|---|
committer | Heikki Linnakangas <heikki.linnakangas@iki.fi> | 2014-04-14 15:27:32 +0300 |
commit | e3e6e3af560116adc20cc9d6e75bfe82a45def60 (patch) | |
tree | 173924aadbefcb940c1203e02c01b24e7480646c /src | |
parent | 1bd3842163f2b44e29938b5ab158bb6a589ff10c (diff) | |
download | postgresql-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.c | 36 |
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) |