From bb7cc2623f242ffafae404f8ebbb331b9a7f2b68 Mon Sep 17 00:00:00 2001 From: Simon Riggs Date: Mon, 18 Mar 2013 13:46:42 +0000 Subject: Remove PageSetTLI and rename pd_tli to pd_checksum Remove use of PageSetTLI() from all page manipulation functions and adjust README to indicate change in the way we make changes to pages. Repurpose those bytes into the pd_checksum field and explain how that works in comments about page header. Refactoring ahead of actual feature patch which would make use of the checksum field, arriving later. Jeff Davis, with comments and doc changes by Simon Riggs Direction suggested by Robert Haas; many others providing review comments. --- src/backend/access/spgist/spgdoinsert.c | 15 --------------- src/backend/access/spgist/spginsert.c | 3 --- src/backend/access/spgist/spgvacuum.c | 3 --- src/backend/access/spgist/spgxlog.c | 21 --------------------- 4 files changed, 42 deletions(-) (limited to 'src/backend/access/spgist') diff --git a/src/backend/access/spgist/spgdoinsert.c b/src/backend/access/spgist/spgdoinsert.c index 1d9cbf7cd10..5f6bcdd6b72 100644 --- a/src/backend/access/spgist/spgdoinsert.c +++ b/src/backend/access/spgist/spgdoinsert.c @@ -308,13 +308,11 @@ addLeafTuple(Relation index, SpGistState *state, SpGistLeafTuple leafTuple, recptr = XLogInsert(RM_SPGIST_ID, XLOG_SPGIST_ADD_LEAF, rdata); PageSetLSN(current->page, recptr); - PageSetTLI(current->page, ThisTimeLineID); /* update parent only if we actually changed it */ if (xlrec.blknoParent != InvalidBlockNumber) { PageSetLSN(parent->page, recptr); - PageSetTLI(parent->page, ThisTimeLineID); } } @@ -548,11 +546,8 @@ moveLeafs(Relation index, SpGistState *state, recptr = XLogInsert(RM_SPGIST_ID, XLOG_SPGIST_MOVE_LEAFS, rdata); PageSetLSN(current->page, recptr); - PageSetTLI(current->page, ThisTimeLineID); PageSetLSN(npage, recptr); - PageSetTLI(npage, ThisTimeLineID); PageSetLSN(parent->page, recptr); - PageSetTLI(parent->page, ThisTimeLineID); } END_CRIT_SECTION(); @@ -1401,7 +1396,6 @@ doPickSplit(Relation index, SpGistState *state, Page page = BufferGetPage(newLeafBuffer); PageSetLSN(page, recptr); - PageSetTLI(page, ThisTimeLineID); } if (saveCurrent.buffer != InvalidBuffer) @@ -1409,16 +1403,13 @@ doPickSplit(Relation index, SpGistState *state, Page page = BufferGetPage(saveCurrent.buffer); PageSetLSN(page, recptr); - PageSetTLI(page, ThisTimeLineID); } PageSetLSN(current->page, recptr); - PageSetTLI(current->page, ThisTimeLineID); if (parent->buffer != InvalidBuffer) { PageSetLSN(parent->page, recptr); - PageSetTLI(parent->page, ThisTimeLineID); } } @@ -1557,7 +1548,6 @@ spgAddNodeAction(Relation index, SpGistState *state, recptr = XLogInsert(RM_SPGIST_ID, XLOG_SPGIST_ADD_NODE, rdata); PageSetLSN(current->page, recptr); - PageSetTLI(current->page, ThisTimeLineID); } END_CRIT_SECTION(); @@ -1667,11 +1657,8 @@ spgAddNodeAction(Relation index, SpGistState *state, /* we don't bother to check if any of these are redundant */ PageSetLSN(current->page, recptr); - PageSetTLI(current->page, ThisTimeLineID); PageSetLSN(parent->page, recptr); - PageSetTLI(parent->page, ThisTimeLineID); PageSetLSN(saveCurrent.page, recptr); - PageSetTLI(saveCurrent.page, ThisTimeLineID); } END_CRIT_SECTION(); @@ -1831,12 +1818,10 @@ spgSplitNodeAction(Relation index, SpGistState *state, recptr = XLogInsert(RM_SPGIST_ID, XLOG_SPGIST_SPLIT_TUPLE, rdata); PageSetLSN(current->page, recptr); - PageSetTLI(current->page, ThisTimeLineID); if (newBuffer != InvalidBuffer) { PageSetLSN(BufferGetPage(newBuffer), recptr); - PageSetTLI(BufferGetPage(newBuffer), ThisTimeLineID); } } diff --git a/src/backend/access/spgist/spginsert.c b/src/backend/access/spgist/spginsert.c index 4f7df3dcc39..ac01fd292c1 100644 --- a/src/backend/access/spgist/spginsert.c +++ b/src/backend/access/spgist/spginsert.c @@ -105,11 +105,8 @@ spgbuild(PG_FUNCTION_ARGS) recptr = XLogInsert(RM_SPGIST_ID, XLOG_SPGIST_CREATE_INDEX, &rdata); PageSetLSN(BufferGetPage(metabuffer), recptr); - PageSetTLI(BufferGetPage(metabuffer), ThisTimeLineID); PageSetLSN(BufferGetPage(rootbuffer), recptr); - PageSetTLI(BufferGetPage(rootbuffer), ThisTimeLineID); PageSetLSN(BufferGetPage(nullbuffer), recptr); - PageSetTLI(BufferGetPage(nullbuffer), ThisTimeLineID); } END_CRIT_SECTION(); diff --git a/src/backend/access/spgist/spgvacuum.c b/src/backend/access/spgist/spgvacuum.c index 23c0ec6e52a..1874bdd0953 100644 --- a/src/backend/access/spgist/spgvacuum.c +++ b/src/backend/access/spgist/spgvacuum.c @@ -392,7 +392,6 @@ vacuumLeafPage(spgBulkDeleteState *bds, Relation index, Buffer buffer, recptr = XLogInsert(RM_SPGIST_ID, XLOG_SPGIST_VACUUM_LEAF, rdata); PageSetLSN(page, recptr); - PageSetTLI(page, ThisTimeLineID); } END_CRIT_SECTION(); @@ -473,7 +472,6 @@ vacuumLeafRoot(spgBulkDeleteState *bds, Relation index, Buffer buffer) recptr = XLogInsert(RM_SPGIST_ID, XLOG_SPGIST_VACUUM_ROOT, rdata); PageSetLSN(page, recptr); - PageSetTLI(page, ThisTimeLineID); } END_CRIT_SECTION(); @@ -594,7 +592,6 @@ vacuumRedirectAndPlaceholder(Relation index, Buffer buffer) recptr = XLogInsert(RM_SPGIST_ID, XLOG_SPGIST_VACUUM_REDIRECT, rdata); PageSetLSN(page, recptr); - PageSetTLI(page, ThisTimeLineID); } END_CRIT_SECTION(); diff --git a/src/backend/access/spgist/spgxlog.c b/src/backend/access/spgist/spgxlog.c index 935f5628b9f..3f5556f65f7 100644 --- a/src/backend/access/spgist/spgxlog.c +++ b/src/backend/access/spgist/spgxlog.c @@ -84,7 +84,6 @@ spgRedoCreateIndex(XLogRecPtr lsn, XLogRecord *record) page = (Page) BufferGetPage(buffer); SpGistInitMetapage(page); PageSetLSN(page, lsn); - PageSetTLI(page, ThisTimeLineID); MarkBufferDirty(buffer); UnlockReleaseBuffer(buffer); @@ -93,7 +92,6 @@ spgRedoCreateIndex(XLogRecPtr lsn, XLogRecord *record) SpGistInitBuffer(buffer, SPGIST_LEAF); page = (Page) BufferGetPage(buffer); PageSetLSN(page, lsn); - PageSetTLI(page, ThisTimeLineID); MarkBufferDirty(buffer); UnlockReleaseBuffer(buffer); @@ -102,7 +100,6 @@ spgRedoCreateIndex(XLogRecPtr lsn, XLogRecord *record) SpGistInitBuffer(buffer, SPGIST_LEAF | SPGIST_NULLS); page = (Page) BufferGetPage(buffer); PageSetLSN(page, lsn); - PageSetTLI(page, ThisTimeLineID); MarkBufferDirty(buffer); UnlockReleaseBuffer(buffer); } @@ -171,7 +168,6 @@ spgRedoAddLeaf(XLogRecPtr lsn, XLogRecord *record) } PageSetLSN(page, lsn); - PageSetTLI(page, ThisTimeLineID); MarkBufferDirty(buffer); } UnlockReleaseBuffer(buffer); @@ -198,7 +194,6 @@ spgRedoAddLeaf(XLogRecPtr lsn, XLogRecord *record) xldata->blknoLeaf, xldata->offnumLeaf); PageSetLSN(page, lsn); - PageSetTLI(page, ThisTimeLineID); MarkBufferDirty(buffer); } UnlockReleaseBuffer(buffer); @@ -264,7 +259,6 @@ spgRedoMoveLeafs(XLogRecPtr lsn, XLogRecord *record) } PageSetLSN(page, lsn); - PageSetTLI(page, ThisTimeLineID); MarkBufferDirty(buffer); } UnlockReleaseBuffer(buffer); @@ -289,7 +283,6 @@ spgRedoMoveLeafs(XLogRecPtr lsn, XLogRecord *record) toInsert[nInsert - 1]); PageSetLSN(page, lsn); - PageSetTLI(page, ThisTimeLineID); MarkBufferDirty(buffer); } UnlockReleaseBuffer(buffer); @@ -316,7 +309,6 @@ spgRedoMoveLeafs(XLogRecPtr lsn, XLogRecord *record) xldata->blknoDst, toInsert[nInsert - 1]); PageSetLSN(page, lsn); - PageSetTLI(page, ThisTimeLineID); MarkBufferDirty(buffer); } UnlockReleaseBuffer(buffer); @@ -363,7 +355,6 @@ spgRedoAddNode(XLogRecPtr lsn, XLogRecord *record) innerTuple->size); PageSetLSN(page, lsn); - PageSetTLI(page, ThisTimeLineID); MarkBufferDirty(buffer); } UnlockReleaseBuffer(buffer); @@ -413,7 +404,6 @@ spgRedoAddNode(XLogRecPtr lsn, XLogRecord *record) if (xldata->blknoParent != xldata->blknoNew) { PageSetLSN(page, lsn); - PageSetTLI(page, ThisTimeLineID); } MarkBufferDirty(buffer); } @@ -464,7 +454,6 @@ spgRedoAddNode(XLogRecPtr lsn, XLogRecord *record) if (xldata->blknoParent != xldata->blkno) { PageSetLSN(page, lsn); - PageSetTLI(page, ThisTimeLineID); } MarkBufferDirty(buffer); } @@ -506,7 +495,6 @@ spgRedoAddNode(XLogRecPtr lsn, XLogRecord *record) xldata->blknoNew, xldata->offnumNew); PageSetLSN(page, lsn); - PageSetTLI(page, ThisTimeLineID); MarkBufferDirty(buffer); } UnlockReleaseBuffer(buffer); @@ -558,7 +546,6 @@ spgRedoSplitTuple(XLogRecPtr lsn, XLogRecord *record) postfixTuple->size, xldata->offnumPostfix); PageSetLSN(page, lsn); - PageSetTLI(page, ThisTimeLineID); MarkBufferDirty(buffer); } UnlockReleaseBuffer(buffer); @@ -588,7 +575,6 @@ spgRedoSplitTuple(XLogRecPtr lsn, XLogRecord *record) xldata->offnumPostfix); PageSetLSN(page, lsn); - PageSetTLI(page, ThisTimeLineID); MarkBufferDirty(buffer); } UnlockReleaseBuffer(buffer); @@ -764,13 +750,11 @@ spgRedoPickSplit(XLogRecPtr lsn, XLogRecord *record) if (srcPage != NULL) { PageSetLSN(srcPage, lsn); - PageSetTLI(srcPage, ThisTimeLineID); MarkBufferDirty(srcBuffer); } if (destPage != NULL) { PageSetLSN(destPage, lsn); - PageSetTLI(destPage, ThisTimeLineID); MarkBufferDirty(destBuffer); } @@ -807,7 +791,6 @@ spgRedoPickSplit(XLogRecPtr lsn, XLogRecord *record) } PageSetLSN(page, lsn); - PageSetTLI(page, ThisTimeLineID); MarkBufferDirty(buffer); } UnlockReleaseBuffer(buffer); @@ -852,7 +835,6 @@ spgRedoPickSplit(XLogRecPtr lsn, XLogRecord *record) xldata->blknoInner, xldata->offnumInner); PageSetLSN(page, lsn); - PageSetTLI(page, ThisTimeLineID); MarkBufferDirty(buffer); } UnlockReleaseBuffer(buffer); @@ -943,7 +925,6 @@ spgRedoVacuumLeaf(XLogRecPtr lsn, XLogRecord *record) } PageSetLSN(page, lsn); - PageSetTLI(page, ThisTimeLineID); MarkBufferDirty(buffer); } UnlockReleaseBuffer(buffer); @@ -977,7 +958,6 @@ spgRedoVacuumRoot(XLogRecPtr lsn, XLogRecord *record) PageIndexMultiDelete(page, toDelete, xldata->nDelete); PageSetLSN(page, lsn); - PageSetTLI(page, ThisTimeLineID); MarkBufferDirty(buffer); } UnlockReleaseBuffer(buffer); @@ -1060,7 +1040,6 @@ spgRedoVacuumRedirect(XLogRecPtr lsn, XLogRecord *record) } PageSetLSN(page, lsn); - PageSetTLI(page, ThisTimeLineID); MarkBufferDirty(buffer); } -- cgit v1.2.3