From e546d1d052f220b077cf4d9fee8e6d5bf85911c5 Mon Sep 17 00:00:00 2001
From: Peter Eisentraut <peter@eisentraut.org>
Date: Fri, 13 Aug 2021 17:15:03 +0200
Subject: [PATCH] pg_amcheck: Message style and structuring improvements

---
 src/bin/pg_amcheck/pg_amcheck.c           | 31 ++++++++++++-----------
 src/bin/pg_amcheck/t/004_verify_heapam.pl |  8 +++---
 2 files changed, 20 insertions(+), 19 deletions(-)

diff --git a/src/bin/pg_amcheck/pg_amcheck.c b/src/bin/pg_amcheck/pg_amcheck.c
index 58790521b9..406fedaab1 100644
--- a/src/bin/pg_amcheck/pg_amcheck.c
+++ b/src/bin/pg_amcheck/pg_amcheck.c
@@ -1028,29 +1028,28 @@ verify_heap_slot_handler(PGresult *res, PGconn *conn, void *context)
 				msg = PQgetvalue(res, i, 3);
 
 			if (!PQgetisnull(res, i, 2))
-				printf(_("heap table \"%s\".\"%s\".\"%s\", block %s, offset %s, attribute %s:\n    %s\n"),
+				printf(_("heap table \"%s.%s.%s\", block %s, offset %s, attribute %s:\n"),
 					   rel->datinfo->datname, rel->nspname, rel->relname,
 					   PQgetvalue(res, i, 0),	/* blkno */
 					   PQgetvalue(res, i, 1),	/* offnum */
-					   PQgetvalue(res, i, 2),	/* attnum */
-					   msg);
+					   PQgetvalue(res, i, 2));	/* attnum */
 
 			else if (!PQgetisnull(res, i, 1))
-				printf(_("heap table \"%s\".\"%s\".\"%s\", block %s, offset %s:\n    %s\n"),
+				printf(_("heap table \"%s.%s.%s\", block %s, offset %s:\n"),
 					   rel->datinfo->datname, rel->nspname, rel->relname,
 					   PQgetvalue(res, i, 0),	/* blkno */
-					   PQgetvalue(res, i, 1),	/* offnum */
-					   msg);
+					   PQgetvalue(res, i, 1));	/* offnum */
 
 			else if (!PQgetisnull(res, i, 0))
-				printf(_("heap table \"%s\".\"%s\".\"%s\", block %s:\n    %s\n"),
+				printf(_("heap table \"%s.%s.%s\", block %s:\n"),
 					   rel->datinfo->datname, rel->nspname, rel->relname,
-					   PQgetvalue(res, i, 0),	/* blkno */
-					   msg);
+					   PQgetvalue(res, i, 0));	/* blkno */
 
 			else
-				printf(_("heap table \"%s\".\"%s\".\"%s\":\n    %s\n"),
-					   rel->datinfo->datname, rel->nspname, rel->relname, msg);
+				printf(_("heap table \"%s.%s.%s\":\n"),
+					   rel->datinfo->datname, rel->nspname, rel->relname);
+
+			printf("    %s\n", msg);
 		}
 	}
 	else if (PQresultStatus(res) != PGRES_TUPLES_OK)
@@ -1058,8 +1057,9 @@ verify_heap_slot_handler(PGresult *res, PGconn *conn, void *context)
 		char	   *msg = indent_lines(PQerrorMessage(conn));
 
 		all_checks_pass = false;
-		printf(_("heap table \"%s\".\"%s\".\"%s\":\n%s"),
-			   rel->datinfo->datname, rel->nspname, rel->relname, msg);
+		printf(_("heap table \"%s.%s.%s\":\n"),
+			   rel->datinfo->datname, rel->nspname, rel->relname);
+		printf("%s", msg);
 		if (opts.verbose)
 			printf(_("query was: %s\n"), rel->sql);
 		FREE_AND_SET_NULL(msg);
@@ -1124,8 +1124,9 @@ verify_btree_slot_handler(PGresult *res, PGconn *conn, void *context)
 		char	   *msg = indent_lines(PQerrorMessage(conn));
 
 		all_checks_pass = false;
-		printf(_("btree index \"%s\".\"%s\".\"%s\":\n%s"),
-			   rel->datinfo->datname, rel->nspname, rel->relname, msg);
+		printf(_("btree index \"%s.%s.%s\":\n"),
+			   rel->datinfo->datname, rel->nspname, rel->relname);
+		printf("%s", msg);
 		if (opts.verbose)
 			printf(_("query was: %s\n"), rel->sql);
 		FREE_AND_SET_NULL(msg);
diff --git a/src/bin/pg_amcheck/t/004_verify_heapam.pl b/src/bin/pg_amcheck/t/004_verify_heapam.pl
index b3a96e8016..308fc61868 100644
--- a/src/bin/pg_amcheck/t/004_verify_heapam.pl
+++ b/src/bin/pg_amcheck/t/004_verify_heapam.pl
@@ -327,14 +327,14 @@ sub header
 {
 	my ($blkno, $offnum, $attnum) = @_;
 	return
-	  qr/heap table "postgres"\."public"\."test", block $blkno, offset $offnum, attribute $attnum:\s+/ms
+	  qr/heap table "postgres\.public\.test", block $blkno, offset $offnum, attribute $attnum:\s+/ms
 	  if (defined $attnum);
 	return
-	  qr/heap table "postgres"\."public"\."test", block $blkno, offset $offnum:\s+/ms
+	  qr/heap table "postgres\.public\.test", block $blkno, offset $offnum:\s+/ms
 	  if (defined $offnum);
-	return qr/heap table "postgres"\."public"\."test", block $blkno:\s+/ms
+	return qr/heap table "postgres\.public\.test", block $blkno:\s+/ms
 	  if (defined $blkno);
-	return qr/heap table "postgres"\."public"\."test":\s+/ms;
+	return qr/heap table "postgres\.public\.test":\s+/ms;
 }
 
 # Corrupt the tuples, one type of corruption per tuple.  Some types of
-- 
2.24.1