agora inbox for pgsql-hackers@postgresql.org  
help / color / mirror / Atom feed
[PATCH v21 4/8] Row pattern recognition patch (planner).
519+ messages / 2 participants
[nested] [flat]

* [PATCH v21 4/8] Row pattern recognition patch (planner).
@ 2024-08-26 04:32 Tatsuo Ishii <ishii@postgresql.org>
  0 siblings, 0 replies; 519+ messages in thread

From: Tatsuo Ishii @ 2024-08-26 04:32 UTC (permalink / raw)

---
 src/backend/optimizer/plan/createplan.c   | 24 +++++++++++++++-----
 src/backend/optimizer/plan/planner.c      |  3 +++
 src/backend/optimizer/plan/setrefs.c      | 27 ++++++++++++++++++++++-
 src/backend/optimizer/prep/prepjointree.c |  9 ++++++++
 src/include/nodes/plannodes.h             | 19 ++++++++++++++++
 5 files changed, 76 insertions(+), 6 deletions(-)

diff --git a/src/backend/optimizer/plan/createplan.c b/src/backend/optimizer/plan/createplan.c
index 8e0e5977a9..a1b2c71364 100644
--- a/src/backend/optimizer/plan/createplan.c
+++ b/src/backend/optimizer/plan/createplan.c
@@ -288,9 +288,11 @@ static WindowAgg *make_windowagg(List *tlist, Index winref,
 								 int ordNumCols, AttrNumber *ordColIdx, Oid *ordOperators, Oid *ordCollations,
 								 int frameOptions, Node *startOffset, Node *endOffset,
 								 Oid startInRangeFunc, Oid endInRangeFunc,
-								 Oid inRangeColl, bool inRangeAsc, bool inRangeNullsFirst,
-								 List *runCondition, List *qual, bool topWindow,
-								 Plan *lefttree);
+								 Oid inRangeColl, bool inRangeAsc, bool inRangeNullsFirst, List *runCondition,
+								 RPSkipTo rpSkipTo, List *patternVariable, List *patternRegexp,
+								 List *defineClause,
+								 List *defineInitial,
+								 List *qual, bool topWindow, Plan *lefttree);
 static Group *make_group(List *tlist, List *qual, int numGroupCols,
 						 AttrNumber *grpColIdx, Oid *grpOperators, Oid *grpCollations,
 						 Plan *lefttree);
@@ -2697,6 +2699,11 @@ create_windowagg_plan(PlannerInfo *root, WindowAggPath *best_path)
 						  wc->inRangeAsc,
 						  wc->inRangeNullsFirst,
 						  best_path->runCondition,
+						  wc->rpSkipTo,
+						  wc->patternVariable,
+						  wc->patternRegexp,
+						  wc->defineClause,
+						  wc->defineInitial,
 						  best_path->qual,
 						  best_path->topwindow,
 						  subplan);
@@ -6631,8 +6638,10 @@ make_windowagg(List *tlist, Index winref,
 			   int ordNumCols, AttrNumber *ordColIdx, Oid *ordOperators, Oid *ordCollations,
 			   int frameOptions, Node *startOffset, Node *endOffset,
 			   Oid startInRangeFunc, Oid endInRangeFunc,
-			   Oid inRangeColl, bool inRangeAsc, bool inRangeNullsFirst,
-			   List *runCondition, List *qual, bool topWindow, Plan *lefttree)
+			   Oid inRangeColl, bool inRangeAsc, bool inRangeNullsFirst, List *runCondition,
+			   RPSkipTo rpSkipTo, List *patternVariable, List *patternRegexp, List *defineClause,
+			   List *defineInitial,
+			   List *qual, bool topWindow, Plan *lefttree)
 {
 	WindowAgg  *node = makeNode(WindowAgg);
 	Plan	   *plan = &node->plan;
@@ -6658,6 +6667,11 @@ make_windowagg(List *tlist, Index winref,
 	node->inRangeAsc = inRangeAsc;
 	node->inRangeNullsFirst = inRangeNullsFirst;
 	node->topWindow = topWindow;
+	node->rpSkipTo = rpSkipTo,
+		node->patternVariable = patternVariable;
+	node->patternRegexp = patternRegexp;
+	node->defineClause = defineClause;
+	node->defineInitial = defineInitial;
 
 	plan->targetlist = tlist;
 	plan->lefttree = lefttree;
diff --git a/src/backend/optimizer/plan/planner.c b/src/backend/optimizer/plan/planner.c
index b5827d3980..ccb66336a8 100644
--- a/src/backend/optimizer/plan/planner.c
+++ b/src/backend/optimizer/plan/planner.c
@@ -870,6 +870,9 @@ subquery_planner(PlannerGlobal *glob, Query *parse, PlannerInfo *parent_root,
 												EXPRKIND_LIMIT);
 		wc->endOffset = preprocess_expression(root, wc->endOffset,
 											  EXPRKIND_LIMIT);
+		wc->defineClause = (List *) preprocess_expression(root,
+														  (Node *) wc->defineClause,
+														  EXPRKIND_TARGET);
 	}
 
 	parse->limitOffset = preprocess_expression(root, parse->limitOffset,
diff --git a/src/backend/optimizer/plan/setrefs.c b/src/backend/optimizer/plan/setrefs.c
index 7aed84584c..7d726729ae 100644
--- a/src/backend/optimizer/plan/setrefs.c
+++ b/src/backend/optimizer/plan/setrefs.c
@@ -210,7 +210,6 @@ static List *set_windowagg_runcondition_references(PlannerInfo *root,
 												   List *runcondition,
 												   Plan *plan);
 
-
 /*****************************************************************************
  *
  *		SUBPLAN REFERENCES
@@ -2471,6 +2470,32 @@ set_upper_references(PlannerInfo *root, Plan *plan, int rtoffset)
 					   NRM_EQUAL,
 					   NUM_EXEC_QUAL(plan));
 
+	/*
+	 * Modifies an expression tree in each DEFINE clause so that all Var
+	 * nodes's varno refers to OUTER_VAR.
+	 */
+	if (IsA(plan, WindowAgg))
+	{
+		WindowAgg  *wplan = (WindowAgg *) plan;
+
+		if (wplan->defineClause != NIL)
+		{
+			foreach(l, wplan->defineClause)
+			{
+				TargetEntry *tle = (TargetEntry *) lfirst(l);
+
+				tle->expr = (Expr *)
+					fix_upper_expr(root,
+								   (Node *) tle->expr,
+								   subplan_itlist,
+								   OUTER_VAR,
+								   rtoffset,
+								   NRM_EQUAL,
+								   NUM_EXEC_QUAL(plan));
+			}
+		}
+	}
+
 	pfree(subplan_itlist);
 }
 
diff --git a/src/backend/optimizer/prep/prepjointree.c b/src/backend/optimizer/prep/prepjointree.c
index 969e257f70..3cedb5c8e5 100644
--- a/src/backend/optimizer/prep/prepjointree.c
+++ b/src/backend/optimizer/prep/prepjointree.c
@@ -2175,6 +2175,15 @@ perform_pullup_replace_vars(PlannerInfo *root,
 	parse->returningList = (List *)
 		pullup_replace_vars((Node *) parse->returningList, rvcontext);
 
+	foreach(lc, parse->windowClause)
+	{
+		WindowClause *wc = lfirst_node(WindowClause, lc);
+
+		if (wc->defineClause != NIL)
+			wc->defineClause = (List *)
+				pullup_replace_vars((Node *) wc->defineClause, rvcontext);
+	}
+
 	if (parse->onConflict)
 	{
 		parse->onConflict->onConflictSet = (List *)
diff --git a/src/include/nodes/plannodes.h b/src/include/nodes/plannodes.h
index 62cd6a6666..b7b2ac4aaf 100644
--- a/src/include/nodes/plannodes.h
+++ b/src/include/nodes/plannodes.h
@@ -20,6 +20,7 @@
 #include "lib/stringinfo.h"
 #include "nodes/bitmapset.h"
 #include "nodes/lockoptions.h"
+#include "nodes/parsenodes.h"
 #include "nodes/primnodes.h"
 
 
@@ -1099,6 +1100,24 @@ typedef struct WindowAgg
 	/* nulls sort first for in_range tests? */
 	bool		inRangeNullsFirst;
 
+	/* Row Pattern Recognition AFTER MACH SKIP clause */
+	RPSkipTo	rpSkipTo;		/* Row Pattern Skip To type */
+
+	/* Row Pattern PATTERN variable name (list of String) */
+	List	   *patternVariable;
+
+	/*
+	 * Row Pattern RPATTERN regular expression quantifier ('+' or ''. list of
+	 * String)
+	 */
+	List	   *patternRegexp;
+
+	/* Row Pattern DEFINE clause (list of TargetEntry) */
+	List	   *defineClause;
+
+	/* Row Pattern DEFINE variable initial names (list of String) */
+	List	   *defineInitial;
+
 	/*
 	 * false for all apart from the WindowAgg that's closest to the root of
 	 * the plan
-- 
2.25.1


----Next_Part(Mon_Aug_26_13_39_47_2024_878)--
Content-Type: Text/X-Patch; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="v21-0005-Row-pattern-recognition-patch-executor.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread

* [PATCH v6a 4/5] smaller segsize for tests
@ 2026-05-28 20:17 Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 519+ messages in thread

From: Andres Freund @ 2026-05-28 20:17 UTC (permalink / raw)

---
 meson.build                                    | 3 ++-
 contrib/test_decoding/expected/ddl.out         | 2 +-
 contrib/test_decoding/sql/ddl.sql              | 3 +--
 src/test/perl/PostgreSQL/Test/Cluster.pm       | 1 +
 src/test/recovery/t/039_end_of_wal.pl          | 3 ++-
 src/test/recovery/t/051_effective_wal_level.pl | 2 +-
 src/test/regress/pg_regress.c                  | 2 +-
 src/Makefile.global.in                         | 2 +-
 8 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meson.build b/meson.build
index 20b887f1a1b..b7a42e4373a 100644
--- a/meson.build
+++ b/meson.build
@@ -3927,7 +3927,8 @@ sys.exit(sp.returncode)
        test_initdb_template,
        temp_install_bindir / 'initdb',
        '--auth', 'trust', '--no-sync', '--no-instructions', '--lc-messages=C',
-       '--no-clean'
+       '--no-clean',
+       '--wal-segsize=1',
      ],
      priority: setup_tests_priority - 1,
      timeout: 300,
diff --git a/contrib/test_decoding/expected/ddl.out b/contrib/test_decoding/expected/ddl.out
index 6819812e806..30a1877a76f 100644
--- a/contrib/test_decoding/expected/ddl.out
+++ b/contrib/test_decoding/expected/ddl.out
@@ -58,7 +58,7 @@ SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_d
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
     slot_name    |    plugin     | slot_type | active | catalog_xmin_set | data_xmin_not_set | some_wal 
 -----------------+---------------+-----------+--------+------------------+-------------------+----------
diff --git a/contrib/test_decoding/sql/ddl.sql b/contrib/test_decoding/sql/ddl.sql
index 6d0b7d77778..ba250e5d529 100644
--- a/contrib/test_decoding/sql/ddl.sql
+++ b/contrib/test_decoding/sql/ddl.sql
@@ -22,14 +22,13 @@ SELECT 'init' FROM pg_create_physical_replication_slot('repl');
 SELECT data FROM pg_logical_slot_get_changes('repl', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');
 SELECT pg_drop_replication_slot('repl');
 
-
 SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
 
 /* check whether status function reports us, only reproduceable columns */
 SELECT slot_name, plugin, slot_type, active,
     NOT catalog_xmin IS NULL AS catalog_xmin_set,
     xmin IS NULl  AS data_xmin_not_set,
-    pg_wal_lsn_diff(restart_lsn, '0/01000000') > 0 AS some_wal
+    pg_wal_lsn_diff(restart_lsn, '0/00000001') > 0 AS some_wal
 FROM pg_replication_slots;
 
 /*
diff --git a/src/test/perl/PostgreSQL/Test/Cluster.pm b/src/test/perl/PostgreSQL/Test/Cluster.pm
index 4fcb1f6be56..5c74a8b690a 100644
--- a/src/test/perl/PostgreSQL/Test/Cluster.pm
+++ b/src/test/perl/PostgreSQL/Test/Cluster.pm
@@ -671,6 +671,7 @@ sub init
 			'initdb', '--no-sync',
 			'--pgdata' => $pgdata,
 			'--auth' => 'trust',
+			'--wal-segsize' => '1',
 			@{ $params{extra} });
 	}
 	else
diff --git a/src/test/recovery/t/039_end_of_wal.pl b/src/test/recovery/t/039_end_of_wal.pl
index f46d089a0fb..af6a6ced73d 100644
--- a/src/test/recovery/t/039_end_of_wal.pl
+++ b/src/test/recovery/t/039_end_of_wal.pl
@@ -112,7 +112,8 @@ sub build_page_header
 # set to "minimal" avoids random standby snapshot records.  Autovacuum
 # could also trigger randomly, generating random WAL activity of its own.
 my $node = PostgreSQL::Test::Cluster->new("node");
-$node->init;
+$node->init(extra=>['--wal-segsize=16']);
+
 $node->append_conf(
 	'postgresql.conf',
 	q[wal_level = minimal
diff --git a/src/test/recovery/t/051_effective_wal_level.pl b/src/test/recovery/t/051_effective_wal_level.pl
index c862073c34e..6329947a33f 100644
--- a/src/test/recovery/t/051_effective_wal_level.pl
+++ b/src/test/recovery/t/051_effective_wal_level.pl
@@ -34,7 +34,7 @@ sub wait_for_logical_decoding_disabled
 
 # Initialize the primary server with wal_level = 'replica'.
 my $primary = PostgreSQL::Test::Cluster->new('primary');
-$primary->init(allows_streaming => 1);
+$primary->init(allows_streaming => 1, extra=>['--wal-segsize=16']);
 $primary->append_conf('postgresql.conf', "log_min_messages = debug1");
 $primary->start();
 
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c
index 1c052cc0fbf..23f9dfe781f 100644
--- a/src/test/regress/pg_regress.c
+++ b/src/test/regress/pg_regress.c
@@ -2410,7 +2410,7 @@ regression_main(int argc, char *argv[],
 			note("initializing database system by running initdb");
 
 			appendStringInfo(&cmd,
-							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync",
+							 "\"%s%sinitdb\" -D \"%s/data\" --no-clean --no-sync --wal-segsize=1",
 							 bindir ? bindir : "",
 							 bindir ? "/" : "",
 							 temp_instance);
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index cef1ad7f87d..f529bacc4b2 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -442,7 +442,7 @@ ifeq ($(MAKELEVEL),0)
 	$(MAKE) -C '$(top_builddir)' DESTDIR='$(abs_top_builddir)'/tmp_install install >'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 	$(MAKE) -j1 $(if $(CHECKPREP_TOP),-C $(CHECKPREP_TOP),) checkprep >>'$(abs_top_builddir)'/tmp_install/log/install.log 2>&1
 
-	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
+	$(with_temp_install) initdb --auth trust --no-sync --no-instructions --lc-messages=C --no-clean --wal-segsize=1 '$(abs_top_builddir)'/tmp_install/initdb-template >>'$(abs_top_builddir)'/tmp_install/log/initdb-template.log 2>&1
 endif
 endif
 endif
-- 
2.54.0.380.gc69baaf57b


--rv3g7aw7ud36z5b5
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v6a-0005-gha-Only-run-main-regression-tests.patch"



^ permalink  raw  reply  [nested|flat] 519+ messages in thread


end of thread, other threads:[~2026-05-28 20:17 UTC | newest]

Thread overview: 519+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2024-08-26 04:32 [PATCH v21 4/8] Row pattern recognition patch (planner). Tatsuo Ishii <ishii@postgresql.org>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>
2026-05-28 20:17 [PATCH v6a 4/5] smaller segsize for tests Andres Freund <andres@anarazel.de>

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox