From 3bfa802a42a38004a29890499e665cc20f216955 Mon Sep 17 00:00:00 2001 From: Peter Geoghegan Date: Sat, 15 Aug 2026 18:31:18 -0400 Subject: [PATCH v1 1/2] GiST: Deprecate F_TUPLES_DELETED. --- src/include/access/gist.h | 8 ++------ src/backend/access/gist/gistvacuum.c | 1 - src/backend/access/gist/gistxlog.c | 3 --- 3 files changed, 2 insertions(+), 10 deletions(-) diff --git a/src/include/access/gist.h b/src/include/access/gist.h index 9b385b13a..69a7945c5 100644 --- a/src/include/access/gist.h +++ b/src/include/access/gist.h @@ -48,8 +48,8 @@ */ #define F_LEAF (1 << 0) /* leaf page */ #define F_DELETED (1 << 1) /* the page has been deleted */ -#define F_TUPLES_DELETED (1 << 2) /* some tuples on the page were - * deleted */ +#define F_TUPLES_DELETED (1 << 2) /* old-style VACUUM FULL flag + * (deprecated) */ #define F_FOLLOW_RIGHT (1 << 3) /* page to the right has no downlink */ #define F_HAS_GARBAGE (1 << 4) /* some tuples on the page are dead, * but not deleted yet */ @@ -174,10 +174,6 @@ typedef struct GISTENTRY #define GistPageIsDeleted(page) ( GistPageGetOpaque(page)->flags & F_DELETED) -#define GistTuplesDeleted(page) ( GistPageGetOpaque(page)->flags & F_TUPLES_DELETED) -#define GistMarkTuplesDeleted(page) ( GistPageGetOpaque(page)->flags |= F_TUPLES_DELETED) -#define GistClearTuplesDeleted(page) ( GistPageGetOpaque(page)->flags &= ~F_TUPLES_DELETED) - #define GistPageHasGarbage(page) ( GistPageGetOpaque(page)->flags & F_HAS_GARBAGE) #define GistMarkPageHasGarbage(page) ( GistPageGetOpaque(page)->flags |= F_HAS_GARBAGE) #define GistClearPageHasGarbage(page) ( GistPageGetOpaque(page)->flags &= ~F_HAS_GARBAGE) diff --git a/src/backend/access/gist/gistvacuum.c b/src/backend/access/gist/gistvacuum.c index 686a04180..b87e98207 100644 --- a/src/backend/access/gist/gistvacuum.c +++ b/src/backend/access/gist/gistvacuum.c @@ -401,7 +401,6 @@ restart: MarkBufferDirty(buffer); PageIndexMultiDelete(page, todelete, ntodelete); - GistMarkTuplesDeleted(page); if (RelationNeedsWAL(rel)) { diff --git a/src/backend/access/gist/gistxlog.c b/src/backend/access/gist/gistxlog.c index ae538dc81..1f8100f2a 100644 --- a/src/backend/access/gist/gistxlog.c +++ b/src/backend/access/gist/gistxlog.c @@ -114,8 +114,6 @@ gistRedoPageUpdateRecord(XLogReaderState *record) data += sizeof(OffsetNumber) * xldata->ntodelete; PageIndexMultiDelete(page, todelete, xldata->ntodelete); - if (GistPageIsLeaf(page)) - GistMarkTuplesDeleted(page); } /* Add new tuples if any */ @@ -204,7 +202,6 @@ gistRedoDeleteRecord(XLogReaderState *record) PageIndexMultiDelete(page, toDelete, xldata->ntodelete); GistClearPageHasGarbage(page); - GistMarkTuplesDeleted(page); PageSetLSN(page, lsn); MarkBufferDirty(buffer); -- 2.53.0