aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>2014-11-07 15:03:46 +0200
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>2014-11-07 15:13:02 +0200
commit2effb72e682a7dbdc9a8a60a80c22ec1fa9d8079 (patch)
tree7e508fb653afb566c4cf3f52b3f3e4cda25fe36d
parentd6e37b35cda9a88dfd938dd61e9986dd93cc6dd3 (diff)
downloadpostgresql-2effb72e682a7dbdc9a8a60a80c22ec1fa9d8079.tar.gz
postgresql-2effb72e682a7dbdc9a8a60a80c22ec1fa9d8079.zip
Remove obsolete cases from GiST update redo code.
The code that generated a record to clear the F_TUPLES_DELETED flag hasn't existed since we got rid of old-style VACUUM FULL. I kept the code that sets the flag, although it's not used for anything anymore, because it might still be interesting information for debugging purposes that some tuples have been deleted from a page. Likewise, the code to turn the root page from non-leaf to leaf page was removed when we got rid of old-style VACUUM FULL. Remove the code to replay that action, too.
-rw-r--r--src/backend/access/gist/gistxlog.c20
-rw-r--r--src/include/access/gist.h2
2 files changed, 0 insertions, 22 deletions
diff --git a/src/backend/access/gist/gistxlog.c b/src/backend/access/gist/gistxlog.c
index b732f532679..2999d211916 100644
--- a/src/backend/access/gist/gistxlog.c
+++ b/src/backend/access/gist/gistxlog.c
@@ -125,26 +125,6 @@ gistRedoPageUpdateRecord(XLogRecPtr lsn, XLogRecord *record)
off++;
}
}
- else
- {
- /*
- * special case: leafpage, nothing to insert, nothing to delete,
- * then vacuum marks page
- */
- if (GistPageIsLeaf(page) && xldata->ntodelete == 0)
- GistClearTuplesDeleted(page);
- }
-
- if (!GistPageIsLeaf(page) &&
- PageGetMaxOffsetNumber(page) == InvalidOffsetNumber &&
- xldata->blkno == GIST_ROOT_BLKNO)
- {
- /*
- * all links on non-leaf root page was deleted by vacuum full, so
- * root page becomes a leaf
- */
- GistPageSetLeaf(page);
- }
PageSetLSN(page, lsn);
MarkBufferDirty(buffer);
diff --git a/src/include/access/gist.h b/src/include/access/gist.h
index ef5aed4d3e2..39394dfb3df 100644
--- a/src/include/access/gist.h
+++ b/src/include/access/gist.h
@@ -147,8 +147,6 @@ typedef struct GISTENTRY
#define GistPageIsLeaf(page) ( GistPageGetOpaque(page)->flags & F_LEAF)
#define GIST_LEAF(entry) (GistPageIsLeaf((entry)->page))
-#define GistPageSetLeaf(page) ( GistPageGetOpaque(page)->flags |= F_LEAF)
-#define GistPageSetNonLeaf(page) ( GistPageGetOpaque(page)->flags &= ~F_LEAF)
#define GistPageIsDeleted(page) ( GistPageGetOpaque(page)->flags & F_DELETED)
#define GistPageSetDeleted(page) ( GistPageGetOpaque(page)->flags |= F_DELETED)