v20251216-0003-Address-review-comments-by-Mi-osz-and-Serg.patch

application/octet-stream

Filename: v20251216-0003-Address-review-comments-by-Mi-osz-and-Serg.patch
Type: application/octet-stream
Part: 1
Message: Re: amcheck: support for GiST
From da9e30360b14156b598f61c2dd7a59fa49ed1340 Mon Sep 17 00:00:00 2001
From: Andrey Borodin <amborodin@acm.org>
Date: Tue, 16 Dec 2025 16:55:07 +0500
Subject: [PATCH v20251216 3/3] =?UTF-8?q?Address=20review=20comments=20by?=
 =?UTF-8?q?=20Mi=C5=82osz=20and=20Sergey?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 contrib/amcheck/amcheck--1.5--1.6.sql   | 2 +-
 contrib/amcheck/expected/check_gist.out | 2 ++
 contrib/amcheck/meson.build             | 2 +-
 contrib/amcheck/sql/check_gist.sql      | 5 ++++-
 contrib/amcheck/verify_gist.c           | 6 +++---
 5 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/contrib/amcheck/amcheck--1.5--1.6.sql b/contrib/amcheck/amcheck--1.5--1.6.sql
index a6a1debff12..e2d4ca60d5e 100644
--- a/contrib/amcheck/amcheck--1.5--1.6.sql
+++ b/contrib/amcheck/amcheck--1.5--1.6.sql
@@ -11,4 +11,4 @@ RETURNS VOID
 AS 'MODULE_PATHNAME', 'gist_index_check'
 LANGUAGE C STRICT;
 
-REVOKE ALL ON FUNCTION gist_index_check(regclass,boolean) FROM PUBLIC;
+REVOKE ALL ON FUNCTION gist_index_check(regclass, boolean) FROM PUBLIC;
diff --git a/contrib/amcheck/expected/check_gist.out b/contrib/amcheck/expected/check_gist.out
index cbc3e27e679..e229f38aa48 100644
--- a/contrib/amcheck/expected/check_gist.out
+++ b/contrib/amcheck/expected/check_gist.out
@@ -143,3 +143,5 @@ SELECT gist_index_check('toasty', true);
  
 (1 row)
 
+-- cleanup
+DROP TABLE toast_bug;
diff --git a/contrib/amcheck/meson.build b/contrib/amcheck/meson.build
index 13b36b495ed..536af0cccd4 100644
--- a/contrib/amcheck/meson.build
+++ b/contrib/amcheck/meson.build
@@ -2,10 +2,10 @@
 
 amcheck_sources = files(
   'verify_common.c',
+  'verify_gist.c',
   'verify_gin.c',
   'verify_heapam.c',
   'verify_nbtree.c',
-  'verify_gist.c',
 )
 
 if host_system == 'windows'
diff --git a/contrib/amcheck/sql/check_gist.sql b/contrib/amcheck/sql/check_gist.sql
index 37966423b8b..bc5737a7710 100644
--- a/contrib/amcheck/sql/check_gist.sql
+++ b/contrib/amcheck/sql/check_gist.sql
@@ -59,4 +59,7 @@ WHERE attrelid = 'toast_bug'::regclass AND attname = 'buggy';
 -- Insert compressible heap tuple (comfortably exceeds TOAST_TUPLE_THRESHOLD):
 INSERT INTO toast_bug SELECT point(0,0), repeat('a', 2200);
 -- Should not get false positive report of corruption:
-SELECT gist_index_check('toasty', true);
\ No newline at end of file
+SELECT gist_index_check('toasty', true);
+
+-- cleanup
+DROP TABLE toast_bug;
\ No newline at end of file
diff --git a/contrib/amcheck/verify_gist.c b/contrib/amcheck/verify_gist.c
index c15cd6ab556..3c4abfda538 100644
--- a/contrib/amcheck/verify_gist.c
+++ b/contrib/amcheck/verify_gist.c
@@ -87,10 +87,10 @@ typedef struct GistCheckState
 
 PG_FUNCTION_INFO_V1(gist_index_check);
 
-static void giststate_init_heapallindexed(Relation rel, GistCheckState * result);
+static void giststate_init_heapallindexed(Relation rel, GistCheckState *result);
 static void gist_check_parent_keys_consistency(Relation rel, Relation heaprel,
 											   void *callback_state, bool readonly);
-static void gist_check_page(GistCheckState * check_state, GistScanItem * stack,
+static void gist_check_page(GistCheckState *check_state, GistScanItem *stack,
 							Page page, bool heapallindexed,
 							BufferAccessStrategy strategy);
 static void check_index_page(Relation rel, Buffer buffer, BlockNumber blockNo);
@@ -366,7 +366,7 @@ gist_check_parent_keys_consistency(Relation rel, Relation heaprel,
 }
 
 static void
-gist_check_page(GistCheckState * check_state, GistScanItem * stack,
+gist_check_page(GistCheckState *check_state, GistScanItem *stack,
 				Page page, bool heapallindexed, BufferAccessStrategy strategy)
 {
 	OffsetNumber maxoff = PageGetMaxOffsetNumber(page);
-- 
2.51.2