PostgreSQL Patch Tester

Current commitfest | Next commitfest | FAQ | Statistics | Highlights

Highlight type: all assertion compiler core linker panic regress sanitizer tap test

Time range: current 7-day 30-day 90-day

This robot generates gigabytes of CI logs every week. Here is an attempt to search for "highlights", so it's easier to find actionable information quickly. New ideas for what patterns to search for are very welcome. "Current" shows only the most recent results from each submission. The wider time ranges also show information about historical versions, which may be useful for flapping tests, and also for hunting for bugs in master.

59/6805 BUG Segfault triggered by reentrancy in ri_triggers.c
Linux - Debian Trixie - Meson
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/foreign_key.out /tmp/cirrus-ci-build/build/testrun/test_plan_adv...
--- /tmp/cirrus-ci-build/src/test/regress/expected/foreign_key.out	2026-05-27 14:46:57.030826226 +0000
+++ /tmp/cirrus-ci-build/build/testrun/test_plan_advice/001_replan_regress/data/results/foreign_key.out	2026-05-27 14:51...
@@ -262,3453 +262,7 @@
 
 -- Delete another row from PK TABLE
 DELETE FROM PKTABLE WHERE ptest1=5 and ptest2=10;
--- Check FKTABLE (should be no change)
-SELECT * FROM FKTABLE;
- ftest1 | ftest2 | ftest3 
---------+--------+--------
-      1 |      3 |      5
-      2 |      4 |      8
-      3 |      6 |     12
-        |        |      0
-     -1 |     -2 |      4
-(5 rows)
-
--- Update a row from PK TABLE
-UPDATE PKTABLE SET ptest1=1 WHERE ptest1=2;
...
Windows - Server 2022, VS 2019 - Meson & ninja
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/foreign_key.out C:/cirrus/build/testrun/pg_upgrade/002_...
--- C:/cirrus/src/test/regress/expected/foreign_key.out	2026-05-27 14:47:38.829100200 +0000
+++ C:/cirrus/build/testrun/pg_upgrade/002_pg_upgrade/data/results/foreign_key.out	2026-05-27 14:52:55.150134200 +0000
@@ -1612,2103 +1612,7 @@
 update pp set f1=f1+1;
 insert into cc values(13);
 update pp set f1=f1+1;
-update pp set f1=f1+1; -- fail
-ERROR:  update or delete on table "pp" violates foreign key constraint "cc_f1_fkey" on table "cc"
-DETAIL:  Key (f1)=(13) is still referenced from table "cc".
-delete from pp where f1 = 13; -- fail
-ERROR:  update or delete on table "pp" violates foreign key constraint "cc_f1_fkey" on table "cc"
-DETAIL:  Key (f1)=(13) is still referenced from table "cc".
-drop table pp, cc;
-create temp table pp (f1 int primary key);
-create temp table cc (f1 int references pp on update restrict on delete restrict);
-insert into pp values(12);
-insert into pp values(11);
-update pp set f1=f1+1;
-insert into cc values(13);
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/graph_table.out C:/cirrus/build/testrun/regress/regress...
--- C:/cirrus/src/test/regress/expected/graph_table.out	2026-05-27 14:47:38.839785400 +0000
+++ C:/cirrus/build/testrun/regress/regress/results/graph_table.out	2026-05-27 14:52:53.775135400 +0000
@@ -890,158 +890,7 @@
 CREATE TABLE ptne1 PARTITION OF ptne FOR VALUES IN (1, 2);
 CREATE TABLE ptne2 PARTITION OF ptne FOR VALUES IN (3);
 INSERT INTO ptne VALUES (1, 1, 2, 100), (2, 2, 3, 200), (3, 3, 1, 300);
-CREATE PROPERTY GRAPH g4
-    VERTEX TABLES (ptnv)
-    EDGE TABLES (
-        ptne
-            SOURCE KEY (src) REFERENCES ptnv(id)
-            DESTINATION KEY (dest) REFERENCES ptnv(id)
-    );
-SELECT * FROM GRAPH_TABLE (g4 MATCH (s IS ptnv)-[e IS ptne]->(d IS ptnv) COLUMNS (s.val, e.val, d.val)) ORDER BY 1, 2, ...
- val | val | val 
------+-----+-----
-  10 | 100 |  20
-  20 | 200 |  30
-  30 | 300 |  10
...
59/6543 synchronized_standby_slots behavior inconsistent with quorum-based synchronous replication
macOS - Sequoia - Meson
regress
diff -U3 /Users/admin/pgsql/src/test/modules/unsafe_tests/expected/guc_privs.out /Users/admin/pgsql/build/testrun/unsafe...
--- /Users/admin/pgsql/src/test/modules/unsafe_tests/expected/guc_privs.out	2026-05-27 00:15:32
+++ /Users/admin/pgsql/build/testrun/unsafe_tests/regress/results/guc_privs.out	2026-05-27 00:24:52
@@ -590,8 +590,7 @@
 -- Cannot set synchronized_standby_slots to an invalid slot name
 ALTER SYSTEM SET synchronized_standby_slots='invalid*';
 ERROR:  invalid value for parameter "synchronized_standby_slots": "invalid*"
-DETAIL:  replication slot name "invalid*" contains invalid character
-HINT:  Replication slot names may only contain lower case letters, numbers, and the underscore character.
+DETAIL:  syntax error at or near "*"
 -- Can set synchronized_standby_slots to a non-existent slot name
 ALTER SYSTEM SET synchronized_standby_slots='missing';
 -- Reset the GUC
Windows - Server 2022, VS 2019 - Meson & ninja
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/modules/unsafe_tests/expected/guc_privs.out C:/cirrus/build/testrun/unsa...
--- C:/cirrus/src/test/modules/unsafe_tests/expected/guc_privs.out	2026-05-27 00:15:30.517309000 +0000
+++ C:/cirrus/build/testrun/unsafe_tests/regress/results/guc_privs.out	2026-05-27 00:25:56.348625600 +0000
@@ -590,8 +590,7 @@
 -- Cannot set synchronized_standby_slots to an invalid slot name
 ALTER SYSTEM SET synchronized_standby_slots='invalid*';
 ERROR:  invalid value for parameter "synchronized_standby_slots": "invalid*"
-DETAIL:  replication slot name "invalid*" contains invalid character
-HINT:  Replication slot names may only contain lower case letters, numbers, and the underscore character.
+DETAIL:  syntax error at or near "*"
 -- Can set synchronized_standby_slots to a non-existent slot name
 ALTER SYSTEM SET synchronized_standby_slots='missing';
 -- Reset the GUC
Linux - Debian Trixie - Meson
regress
diff -U3 /tmp/cirrus-ci-build/src/test/modules/unsafe_tests/expected/guc_privs.out /tmp/cirrus-ci-build/build/testrun/un...
--- /tmp/cirrus-ci-build/src/test/modules/unsafe_tests/expected/guc_privs.out	2026-05-27 00:15:25.998199470 +0000
+++ /tmp/cirrus-ci-build/build/testrun/unsafe_tests/regress/results/guc_privs.out	2026-05-27 00:20:26.487047682 +0000
@@ -590,8 +590,7 @@
 -- Cannot set synchronized_standby_slots to an invalid slot name
 ALTER SYSTEM SET synchronized_standby_slots='invalid*';
 ERROR:  invalid value for parameter "synchronized_standby_slots": "invalid*"
-DETAIL:  replication slot name "invalid*" contains invalid character
-HINT:  Replication slot names may only contain lower case letters, numbers, and the underscore character.
+DETAIL:  syntax error at or near "*"
 -- Can set synchronized_standby_slots to a non-existent slot name
 ALTER SYSTEM SET synchronized_standby_slots='missing';
 -- Reset the GUC
Linux - Debian Trixie - Autoconf
regress
diff -U3 /tmp/cirrus-ci-build/src/test/modules/unsafe_tests/expected/guc_privs.out /tmp/cirrus-ci-build/src/test/modules...
--- /tmp/cirrus-ci-build/src/test/modules/unsafe_tests/expected/guc_privs.out	2026-05-27 00:15:22.627725212 +0000
+++ /tmp/cirrus-ci-build/src/test/modules/unsafe_tests/results/guc_privs.out	2026-05-27 00:23:37.973482744 +0000
@@ -590,8 +590,7 @@
 -- Cannot set synchronized_standby_slots to an invalid slot name
 ALTER SYSTEM SET synchronized_standby_slots='invalid*';
 ERROR:  invalid value for parameter "synchronized_standby_slots": "invalid*"
-DETAIL:  replication slot name "invalid*" contains invalid character
-HINT:  Replication slot names may only contain lower case letters, numbers, and the underscore character.
+DETAIL:  syntax error at or near "*"
 -- Can set synchronized_standby_slots to a non-existent slot name
 ALTER SYSTEM SET synchronized_standby_slots='missing';
 -- Reset the GUC
NetBSD - Meson
regress
diff -U3 /home/postgres/postgres/src/test/modules/unsafe_tests/expected/guc_privs.out /home/postgres/postgres/build/test...
--- /home/postgres/postgres/src/test/modules/unsafe_tests/expected/guc_privs.out	2026-05-27 00:15:41.356344741 +0000
+++ /home/postgres/postgres/build/testrun/unsafe_tests/regress/results/guc_privs.out	2026-05-27 00:18:54.127869599 +0000
@@ -590,8 +590,7 @@
 -- Cannot set synchronized_standby_slots to an invalid slot name
 ALTER SYSTEM SET synchronized_standby_slots='invalid*';
 ERROR:  invalid value for parameter "synchronized_standby_slots": "invalid*"
-DETAIL:  replication slot name "invalid*" contains invalid character
-HINT:  Replication slot names may only contain lower case letters, numbers, and the underscore character.
+DETAIL:  syntax error at or near "*"
 -- Can set synchronized_standby_slots to a non-existent slot name
 ALTER SYSTEM SET synchronized_standby_slots='missing';
 -- Reset the GUC
FreeBSD - Meson
regress
diff -U3 /tmp/cirrus-ci-build/src/test/modules/unsafe_tests/expected/guc_privs.out /tmp/cirrus-ci-build/build/testrun/un...
--- /tmp/cirrus-ci-build/src/test/modules/unsafe_tests/expected/guc_privs.out	2026-05-27 00:15:25.693159000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/unsafe_tests/regress/results/guc_privs.out	2026-05-27 00:20:23.726020000 +0000
@@ -590,8 +590,7 @@
 -- Cannot set synchronized_standby_slots to an invalid slot name
 ALTER SYSTEM SET synchronized_standby_slots='invalid*';
 ERROR:  invalid value for parameter "synchronized_standby_slots": "invalid*"
-DETAIL:  replication slot name "invalid*" contains invalid character
-HINT:  Replication slot names may only contain lower case letters, numbers, and the underscore character.
+DETAIL:  syntax error at or near "*"
 -- Can set synchronized_standby_slots to a non-existent slot name
 ALTER SYSTEM SET synchronized_standby_slots='missing';
 -- Reset the GUC
59/6606 log_checkpoints: count WAL segment creations from all processes
macOS - Sequoia - Meson
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/rules.out /Users/admin/pgsql/build/testrun/pg_upgrade/002_pg_upgra...
--- /Users/admin/pgsql/src/test/regress/expected/rules.out	2026-05-25 19:25:24
+++ /Users/admin/pgsql/build/testrun/pg_upgrade/002_pg_upgrade/data/results/rules.out	2026-05-25 19:32:01
@@ -1889,6 +1889,9 @@
     pg_stat_get_checkpointer_sync_time() AS sync_time,
     pg_stat_get_checkpointer_buffers_written() AS buffers_written,
     pg_stat_get_checkpointer_slru_written() AS slru_written,
+    pg_stat_get_checkpointer_segs_added() AS segs_added,
+    pg_stat_get_checkpointer_segs_removed() AS segs_removed,
+    pg_stat_get_checkpointer_segs_recycled() AS segs_recycled,
     pg_stat_get_checkpointer_stat_reset_time() AS stats_reset;
 pg_stat_database| SELECT oid AS datid,
     datname,
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/rules.out /Users/admin/pgsql/build/testrun/recovery/027_stream_reg...
--- /Users/admin/pgsql/src/test/regress/expected/rules.out	2026-05-25 19:25:24
+++ /Users/admin/pgsql/build/testrun/recovery/027_stream_regress/data/results/rules.out	2026-05-25 19:33:47
@@ -1889,6 +1889,9 @@
     pg_stat_get_checkpointer_sync_time() AS sync_time,
     pg_stat_get_checkpointer_buffers_written() AS buffers_written,
     pg_stat_get_checkpointer_slru_written() AS slru_written,
+    pg_stat_get_checkpointer_segs_added() AS segs_added,
+    pg_stat_get_checkpointer_segs_removed() AS segs_removed,
+    pg_stat_get_checkpointer_segs_recycled() AS segs_recycled,
     pg_stat_get_checkpointer_stat_reset_time() AS stats_reset;
 pg_stat_database| SELECT oid AS datid,
     datname,
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/rules.out /Users/admin/pgsql/build/testrun/regress/regress/results...
--- /Users/admin/pgsql/src/test/regress/expected/rules.out	2026-05-25 19:25:24
+++ /Users/admin/pgsql/build/testrun/regress/regress/results/rules.out	2026-05-25 19:31:58
@@ -1889,6 +1889,9 @@
     pg_stat_get_checkpointer_sync_time() AS sync_time,
     pg_stat_get_checkpointer_buffers_written() AS buffers_written,
     pg_stat_get_checkpointer_slru_written() AS slru_written,
+    pg_stat_get_checkpointer_segs_added() AS segs_added,
+    pg_stat_get_checkpointer_segs_removed() AS segs_removed,
+    pg_stat_get_checkpointer_segs_recycled() AS segs_recycled,
     pg_stat_get_checkpointer_stat_reset_time() AS stats_reset;
 pg_stat_database| SELECT oid AS datid,
     datname,
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/rules.out /Users/admin/pgsql/build/testrun/test_plan_advice/001_re...
--- /Users/admin/pgsql/src/test/regress/expected/rules.out	2026-05-25 19:25:24
+++ /Users/admin/pgsql/build/testrun/test_plan_advice/001_replan_regress/data/results/rules.out	2026-05-25 19:32:01
@@ -1889,6 +1889,9 @@
     pg_stat_get_checkpointer_sync_time() AS sync_time,
     pg_stat_get_checkpointer_buffers_written() AS buffers_written,
     pg_stat_get_checkpointer_slru_written() AS slru_written,
+    pg_stat_get_checkpointer_segs_added() AS segs_added,
+    pg_stat_get_checkpointer_segs_removed() AS segs_removed,
+    pg_stat_get_checkpointer_segs_recycled() AS segs_recycled,
     pg_stat_get_checkpointer_stat_reset_time() AS stats_reset;
 pg_stat_database| SELECT oid AS datid,
     datname,
Windows - Server 2022, VS 2019 - Meson & ninja
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/rules.out C:/cirrus/build/testrun/pg_upgrade/002_pg_upg...
--- C:/cirrus/src/test/regress/expected/rules.out	2026-05-25 19:26:22.567120700 +0000
+++ C:/cirrus/build/testrun/pg_upgrade/002_pg_upgrade/data/results/rules.out	2026-05-25 19:30:19.587412100 +0000
@@ -1889,6 +1889,9 @@
     pg_stat_get_checkpointer_sync_time() AS sync_time,
     pg_stat_get_checkpointer_buffers_written() AS buffers_written,
     pg_stat_get_checkpointer_slru_written() AS slru_written,
+    pg_stat_get_checkpointer_segs_added() AS segs_added,
+    pg_stat_get_checkpointer_segs_removed() AS segs_removed,
+    pg_stat_get_checkpointer_segs_recycled() AS segs_recycled,
     pg_stat_get_checkpointer_stat_reset_time() AS stats_reset;
 pg_stat_database| SELECT oid AS datid,
     datname,
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/rules.out C:/cirrus/build/testrun/recovery/027_stream_r...
--- C:/cirrus/src/test/regress/expected/rules.out	2026-05-25 19:26:22.567120700 +0000
+++ C:/cirrus/build/testrun/recovery/027_stream_regress/data/results/rules.out	2026-05-25 19:33:48.821293900 +0000
@@ -1889,6 +1889,9 @@
     pg_stat_get_checkpointer_sync_time() AS sync_time,
     pg_stat_get_checkpointer_buffers_written() AS buffers_written,
     pg_stat_get_checkpointer_slru_written() AS slru_written,
+    pg_stat_get_checkpointer_segs_added() AS segs_added,
+    pg_stat_get_checkpointer_segs_removed() AS segs_removed,
+    pg_stat_get_checkpointer_segs_recycled() AS segs_recycled,
     pg_stat_get_checkpointer_stat_reset_time() AS stats_reset;
 pg_stat_database| SELECT oid AS datid,
     datname,
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/rules.out C:/cirrus/build/testrun/regress/regress/resul...
--- C:/cirrus/src/test/regress/expected/rules.out	2026-05-25 19:26:22.567120700 +0000
+++ C:/cirrus/build/testrun/regress/regress/results/rules.out	2026-05-25 19:30:08.469247300 +0000
@@ -1889,6 +1889,9 @@
     pg_stat_get_checkpointer_sync_time() AS sync_time,
     pg_stat_get_checkpointer_buffers_written() AS buffers_written,
     pg_stat_get_checkpointer_slru_written() AS slru_written,
+    pg_stat_get_checkpointer_segs_added() AS segs_added,
+    pg_stat_get_checkpointer_segs_removed() AS segs_removed,
+    pg_stat_get_checkpointer_segs_recycled() AS segs_recycled,
     pg_stat_get_checkpointer_stat_reset_time() AS stats_reset;
 pg_stat_database| SELECT oid AS datid,
     datname,
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/rules.out C:/cirrus/build/testrun/test_plan_advice/001_...
--- C:/cirrus/src/test/regress/expected/rules.out	2026-05-25 19:26:22.567120700 +0000
+++ C:/cirrus/build/testrun/test_plan_advice/001_replan_regress/data/results/rules.out	2026-05-25 19:30:13.404303200 +00...
@@ -1889,6 +1889,9 @@
     pg_stat_get_checkpointer_sync_time() AS sync_time,
     pg_stat_get_checkpointer_buffers_written() AS buffers_written,
     pg_stat_get_checkpointer_slru_written() AS slru_written,
+    pg_stat_get_checkpointer_segs_added() AS segs_added,
+    pg_stat_get_checkpointer_segs_removed() AS segs_removed,
+    pg_stat_get_checkpointer_segs_recycled() AS segs_recycled,
     pg_stat_get_checkpointer_stat_reset_time() AS stats_reset;
 pg_stat_database| SELECT oid AS datid,
     datname,
Linux - Debian Trixie - Meson
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/rules.out /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_u...
--- /tmp/cirrus-ci-build/src/test/regress/expected/rules.out	2026-05-25 19:25:12.260263912 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_upgrade/data/results/rules.out	2026-05-25 19:30:16.857921530 +0...
@@ -1889,6 +1889,9 @@
     pg_stat_get_checkpointer_sync_time() AS sync_time,
     pg_stat_get_checkpointer_buffers_written() AS buffers_written,
     pg_stat_get_checkpointer_slru_written() AS slru_written,
+    pg_stat_get_checkpointer_segs_added() AS segs_added,
+    pg_stat_get_checkpointer_segs_removed() AS segs_removed,
+    pg_stat_get_checkpointer_segs_recycled() AS segs_recycled,
     pg_stat_get_checkpointer_stat_reset_time() AS stats_reset;
 pg_stat_database| SELECT oid AS datid,
     datname,
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/rules.out /tmp/cirrus-ci-build/build/testrun/recovery/027_stream...
--- /tmp/cirrus-ci-build/src/test/regress/expected/rules.out	2026-05-25 19:25:12.260263912 +0000
+++ /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_regress/data/results/rules.out	2026-05-25 19:31:49.478009585 ...
@@ -1889,6 +1889,9 @@
     pg_stat_get_checkpointer_sync_time() AS sync_time,
     pg_stat_get_checkpointer_buffers_written() AS buffers_written,
     pg_stat_get_checkpointer_slru_written() AS slru_written,
+    pg_stat_get_checkpointer_segs_added() AS segs_added,
+    pg_stat_get_checkpointer_segs_removed() AS segs_removed,
+    pg_stat_get_checkpointer_segs_recycled() AS segs_recycled,
     pg_stat_get_checkpointer_stat_reset_time() AS stats_reset;
 pg_stat_database| SELECT oid AS datid,
     datname,
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/rules.out /tmp/cirrus-ci-build/build/testrun/regress/regress/res...
--- /tmp/cirrus-ci-build/src/test/regress/expected/rules.out	2026-05-25 19:25:12.260263912 +0000
+++ /tmp/cirrus-ci-build/build/testrun/regress/regress/results/rules.out	2026-05-25 19:30:17.593922505 +0000
@@ -1889,6 +1889,9 @@
     pg_stat_get_checkpointer_sync_time() AS sync_time,
     pg_stat_get_checkpointer_buffers_written() AS buffers_written,
     pg_stat_get_checkpointer_slru_written() AS slru_written,
+    pg_stat_get_checkpointer_segs_added() AS segs_added,
+    pg_stat_get_checkpointer_segs_removed() AS segs_removed,
+    pg_stat_get_checkpointer_segs_recycled() AS segs_recycled,
     pg_stat_get_checkpointer_stat_reset_time() AS stats_reset;
 pg_stat_database| SELECT oid AS datid,
     datname,
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/rules.out /tmp/cirrus-ci-build/build/testrun/test_plan_advice/00...
--- /tmp/cirrus-ci-build/src/test/regress/expected/rules.out	2026-05-25 19:25:12.260263912 +0000
+++ /tmp/cirrus-ci-build/build/testrun/test_plan_advice/001_replan_regress/data/results/rules.out	2026-05-25 19:30:19.55...
@@ -1889,6 +1889,9 @@
     pg_stat_get_checkpointer_sync_time() AS sync_time,
     pg_stat_get_checkpointer_buffers_written() AS buffers_written,
     pg_stat_get_checkpointer_slru_written() AS slru_written,
+    pg_stat_get_checkpointer_segs_added() AS segs_added,
+    pg_stat_get_checkpointer_segs_removed() AS segs_removed,
+    pg_stat_get_checkpointer_segs_recycled() AS segs_recycled,
     pg_stat_get_checkpointer_stat_reset_time() AS stats_reset;
 pg_stat_database| SELECT oid AS datid,
     datname,
FreeBSD - Meson
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/rules.out /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_u...
--- /tmp/cirrus-ci-build/src/test/regress/expected/rules.out	2026-05-25 19:25:10.250268000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_upgrade/data/results/rules.out	2026-05-25 19:29:10.030700000 +0...
@@ -1889,6 +1889,9 @@
     pg_stat_get_checkpointer_sync_time() AS sync_time,
     pg_stat_get_checkpointer_buffers_written() AS buffers_written,
     pg_stat_get_checkpointer_slru_written() AS slru_written,
+    pg_stat_get_checkpointer_segs_added() AS segs_added,
+    pg_stat_get_checkpointer_segs_removed() AS segs_removed,
+    pg_stat_get_checkpointer_segs_recycled() AS segs_recycled,
     pg_stat_get_checkpointer_stat_reset_time() AS stats_reset;
 pg_stat_database| SELECT oid AS datid,
     datname,
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/rules.out /tmp/cirrus-ci-build/build/testrun/recovery/027_stream...
--- /tmp/cirrus-ci-build/src/test/regress/expected/rules.out	2026-05-25 19:25:10.250268000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_regress/data/results/rules.out	2026-05-25 19:30:43.078920000 ...
@@ -1889,6 +1889,9 @@
     pg_stat_get_checkpointer_sync_time() AS sync_time,
     pg_stat_get_checkpointer_buffers_written() AS buffers_written,
     pg_stat_get_checkpointer_slru_written() AS slru_written,
+    pg_stat_get_checkpointer_segs_added() AS segs_added,
+    pg_stat_get_checkpointer_segs_removed() AS segs_removed,
+    pg_stat_get_checkpointer_segs_recycled() AS segs_recycled,
     pg_stat_get_checkpointer_stat_reset_time() AS stats_reset;
 pg_stat_database| SELECT oid AS datid,
     datname,
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/rules.out /tmp/cirrus-ci-build/build/testrun/regress/regress/res...
--- /tmp/cirrus-ci-build/src/test/regress/expected/rules.out	2026-05-25 19:25:10.250268000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/regress/regress/results/rules.out	2026-05-25 19:29:09.928914000 +0000
@@ -1889,6 +1889,9 @@
     pg_stat_get_checkpointer_sync_time() AS sync_time,
     pg_stat_get_checkpointer_buffers_written() AS buffers_written,
     pg_stat_get_checkpointer_slru_written() AS slru_written,
+    pg_stat_get_checkpointer_segs_added() AS segs_added,
+    pg_stat_get_checkpointer_segs_removed() AS segs_removed,
+    pg_stat_get_checkpointer_segs_recycled() AS segs_recycled,
     pg_stat_get_checkpointer_stat_reset_time() AS stats_reset;
 pg_stat_database| SELECT oid AS datid,
     datname,
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/rules.out /tmp/cirrus-ci-build/build/testrun/test_plan_advice/00...
--- /tmp/cirrus-ci-build/src/test/regress/expected/rules.out	2026-05-25 19:25:10.250268000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/test_plan_advice/001_replan_regress/data/results/rules.out	2026-05-25 19:29:09.87...
@@ -1889,6 +1889,9 @@
     pg_stat_get_checkpointer_sync_time() AS sync_time,
     pg_stat_get_checkpointer_buffers_written() AS buffers_written,
     pg_stat_get_checkpointer_slru_written() AS slru_written,
+    pg_stat_get_checkpointer_segs_added() AS segs_added,
+    pg_stat_get_checkpointer_segs_removed() AS segs_removed,
+    pg_stat_get_checkpointer_segs_recycled() AS segs_recycled,
     pg_stat_get_checkpointer_stat_reset_time() AS stats_reset;
 pg_stat_database| SELECT oid AS datid,
     datname,
Linux - Debian Trixie - Autoconf
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/rules.out /tmp/cirrus-ci-build/src/bin/pg_upgrade/tmp_check/resu...
--- /tmp/cirrus-ci-build/src/test/regress/expected/rules.out	2026-05-25 19:25:13.920292372 +0000
+++ /tmp/cirrus-ci-build/src/bin/pg_upgrade/tmp_check/results/rules.out	2026-05-25 19:33:30.446858193 +0000
@@ -1889,6 +1889,9 @@
     pg_stat_get_checkpointer_sync_time() AS sync_time,
     pg_stat_get_checkpointer_buffers_written() AS buffers_written,
     pg_stat_get_checkpointer_slru_written() AS slru_written,
+    pg_stat_get_checkpointer_segs_added() AS segs_added,
+    pg_stat_get_checkpointer_segs_removed() AS segs_removed,
+    pg_stat_get_checkpointer_segs_recycled() AS segs_recycled,
     pg_stat_get_checkpointer_stat_reset_time() AS stats_reset;
 pg_stat_database| SELECT oid AS datid,
     datname,
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/rules.out /tmp/cirrus-ci-build/src/test/modules/test_plan_advice...
--- /tmp/cirrus-ci-build/src/test/regress/expected/rules.out	2026-05-25 19:25:13.920292372 +0000
+++ /tmp/cirrus-ci-build/src/test/modules/test_plan_advice/tmp_check/results/rules.out	2026-05-25 19:35:36.799282777 +00...
@@ -1889,6 +1889,9 @@
     pg_stat_get_checkpointer_sync_time() AS sync_time,
     pg_stat_get_checkpointer_buffers_written() AS buffers_written,
     pg_stat_get_checkpointer_slru_written() AS slru_written,
+    pg_stat_get_checkpointer_segs_added() AS segs_added,
+    pg_stat_get_checkpointer_segs_removed() AS segs_removed,
+    pg_stat_get_checkpointer_segs_recycled() AS segs_recycled,
     pg_stat_get_checkpointer_stat_reset_time() AS stats_reset;
 pg_stat_database| SELECT oid AS datid,
     datname,
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/rules.out /tmp/cirrus-ci-build/src/test/recovery/tmp_check/resul...
--- /tmp/cirrus-ci-build/src/test/regress/expected/rules.out	2026-05-25 19:25:13.920292372 +0000
+++ /tmp/cirrus-ci-build/src/test/recovery/tmp_check/results/rules.out	2026-05-25 19:35:34.723276952 +0000
@@ -1889,6 +1889,9 @@
     pg_stat_get_checkpointer_sync_time() AS sync_time,
     pg_stat_get_checkpointer_buffers_written() AS buffers_written,
     pg_stat_get_checkpointer_slru_written() AS slru_written,
+    pg_stat_get_checkpointer_segs_added() AS segs_added,
+    pg_stat_get_checkpointer_segs_removed() AS segs_removed,
+    pg_stat_get_checkpointer_segs_recycled() AS segs_recycled,
     pg_stat_get_checkpointer_stat_reset_time() AS stats_reset;
 pg_stat_database| SELECT oid AS datid,
     datname,
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/rules.out /tmp/cirrus-ci-build/src/test/regress/results/rules.ou...
--- /tmp/cirrus-ci-build/src/test/regress/expected/rules.out	2026-05-25 19:25:13.920292372 +0000
+++ /tmp/cirrus-ci-build/src/test/regress/results/rules.out	2026-05-25 19:31:27.542170594 +0000
@@ -1889,6 +1889,9 @@
     pg_stat_get_checkpointer_sync_time() AS sync_time,
     pg_stat_get_checkpointer_buffers_written() AS buffers_written,
     pg_stat_get_checkpointer_slru_written() AS slru_written,
+    pg_stat_get_checkpointer_segs_added() AS segs_added,
+    pg_stat_get_checkpointer_segs_removed() AS segs_removed,
+    pg_stat_get_checkpointer_segs_recycled() AS segs_recycled,
     pg_stat_get_checkpointer_stat_reset_time() AS stats_reset;
 pg_stat_database| SELECT oid AS datid,
     datname,
NetBSD - Meson
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/rules.out /home/postgres/postgres/build/testrun/pg_upgrade/00...
--- /home/postgres/postgres/src/test/regress/expected/rules.out	2026-05-25 19:25:59.945520780 +0000
+++ /home/postgres/postgres/build/testrun/pg_upgrade/002_pg_upgrade/data/results/rules.out	2026-05-25 19:29:16.327871888...
@@ -1889,6 +1889,9 @@
     pg_stat_get_checkpointer_sync_time() AS sync_time,
     pg_stat_get_checkpointer_buffers_written() AS buffers_written,
     pg_stat_get_checkpointer_slru_written() AS slru_written,
+    pg_stat_get_checkpointer_segs_added() AS segs_added,
+    pg_stat_get_checkpointer_segs_removed() AS segs_removed,
+    pg_stat_get_checkpointer_segs_recycled() AS segs_recycled,
     pg_stat_get_checkpointer_stat_reset_time() AS stats_reset;
 pg_stat_database| SELECT oid AS datid,
     datname,
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/rules.out /home/postgres/postgres/build/testrun/recovery/027_...
--- /home/postgres/postgres/src/test/regress/expected/rules.out	2026-05-25 19:25:59.945520780 +0000
+++ /home/postgres/postgres/build/testrun/recovery/027_stream_regress/data/results/rules.out	2026-05-25 19:30:07.8442491...
@@ -1889,6 +1889,9 @@
     pg_stat_get_checkpointer_sync_time() AS sync_time,
     pg_stat_get_checkpointer_buffers_written() AS buffers_written,
     pg_stat_get_checkpointer_slru_written() AS slru_written,
+    pg_stat_get_checkpointer_segs_added() AS segs_added,
+    pg_stat_get_checkpointer_segs_removed() AS segs_removed,
+    pg_stat_get_checkpointer_segs_recycled() AS segs_recycled,
     pg_stat_get_checkpointer_stat_reset_time() AS stats_reset;
 pg_stat_database| SELECT oid AS datid,
     datname,
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/rules.out /home/postgres/postgres/build/testrun/regress/regre...
--- /home/postgres/postgres/src/test/regress/expected/rules.out	2026-05-25 19:25:59.945520780 +0000
+++ /home/postgres/postgres/build/testrun/regress/regress/results/rules.out	2026-05-25 19:29:15.862858321 +0000
@@ -1889,6 +1889,9 @@
     pg_stat_get_checkpointer_sync_time() AS sync_time,
     pg_stat_get_checkpointer_buffers_written() AS buffers_written,
     pg_stat_get_checkpointer_slru_written() AS slru_written,
+    pg_stat_get_checkpointer_segs_added() AS segs_added,
+    pg_stat_get_checkpointer_segs_removed() AS segs_removed,
+    pg_stat_get_checkpointer_segs_recycled() AS segs_recycled,
     pg_stat_get_checkpointer_stat_reset_time() AS stats_reset;
 pg_stat_database| SELECT oid AS datid,
     datname,
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/rules.out /home/postgres/postgres/build/testrun/test_plan_adv...
--- /home/postgres/postgres/src/test/regress/expected/rules.out	2026-05-25 19:25:59.945520780 +0000
+++ /home/postgres/postgres/build/testrun/test_plan_advice/001_replan_regress/data/results/rules.out	2026-05-25 19:29:20...
@@ -1889,6 +1889,9 @@
     pg_stat_get_checkpointer_sync_time() AS sync_time,
     pg_stat_get_checkpointer_buffers_written() AS buffers_written,
     pg_stat_get_checkpointer_slru_written() AS slru_written,
+    pg_stat_get_checkpointer_segs_added() AS segs_added,
+    pg_stat_get_checkpointer_segs_removed() AS segs_removed,
+    pg_stat_get_checkpointer_segs_recycled() AS segs_recycled,
     pg_stat_get_checkpointer_stat_reset_time() AS stats_reset;
 pg_stat_database| SELECT oid AS datid,
     datname,
59/4971 [CREATE|RE] INDEX CONCURRENTLY with single heap scan
Windows - Server 2022, VS 2019 - Meson & ninja
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/indexing.out C:/cirrus/build/testrun/pg_upgrade/002_pg_...
--- C:/cirrus/src/test/regress/expected/indexing.out	2026-05-24 11:01:18.279820400 +0000
+++ C:/cirrus/build/testrun/pg_upgrade/002_pg_upgrade/data/results/indexing.out	2026-05-24 11:06:34.633954600 +0000
@@ -559,13 +559,14 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
-(4 rows)
+         relname          | indisvalid 
+--------------------------+------------
+ idxpart11_expr_idx       | f
+ idxpart11_expr_idx_ccaux | f
+ idxpart1_expr_idx        | f
+ idxpart2_expr_idx        | t
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/indexing.out C:/cirrus/build/testrun/recovery/027_strea...
--- C:/cirrus/src/test/regress/expected/indexing.out	2026-05-24 11:01:18.279820400 +0000
+++ C:/cirrus/build/testrun/recovery/027_stream_regress/data/results/indexing.out	2026-05-24 11:09:50.552407900 +0000
@@ -559,13 +559,14 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
-(4 rows)
+         relname          | indisvalid 
+--------------------------+------------
+ idxpart11_expr_idx       | f
+ idxpart11_expr_idx_ccaux | f
+ idxpart1_expr_idx        | f
+ idxpart2_expr_idx        | t
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/indexing.out C:/cirrus/build/testrun/regress/regress/re...
--- C:/cirrus/src/test/regress/expected/indexing.out	2026-05-24 11:01:18.279820400 +0000
+++ C:/cirrus/build/testrun/regress/regress/results/indexing.out	2026-05-24 11:06:06.139822200 +0000
@@ -559,13 +559,14 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
-(4 rows)
+         relname          | indisvalid 
+--------------------------+------------
+ idxpart11_expr_idx       | f
+ idxpart11_expr_idx_ccaux | f
+ idxpart1_expr_idx        | f
+ idxpart2_expr_idx        | t
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/indexing.out C:/cirrus/build/testrun/test_plan_advice/0...
--- C:/cirrus/src/test/regress/expected/indexing.out	2026-05-24 11:01:18.279820400 +0000
+++ C:/cirrus/build/testrun/test_plan_advice/001_replan_regress/data/results/indexing.out	2026-05-24 11:06:28.167646100 ...
@@ -559,13 +559,14 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
-(4 rows)
+         relname          | indisvalid 
+--------------------------+------------
+ idxpart11_expr_idx       | f
+ idxpart11_expr_idx_ccaux | f
+ idxpart1_expr_idx        | f
+ idxpart2_expr_idx        | t
...
macOS - Sequoia - Meson
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/indexing.out /Users/admin/pgsql/build/testrun/pg_upgrade/002_pg_up...
--- /Users/admin/pgsql/src/test/regress/expected/indexing.out	2026-05-24 11:01:13
+++ /Users/admin/pgsql/build/testrun/pg_upgrade/002_pg_upgrade/data/results/indexing.out	2026-05-24 11:06:47
@@ -559,13 +559,14 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
-(4 rows)
+         relname          | indisvalid 
+--------------------------+------------
+ idxpart11_expr_idx       | f
+ idxpart11_expr_idx_ccaux | f
+ idxpart1_expr_idx        | f
+ idxpart2_expr_idx        | t
...
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/indexing.out /Users/admin/pgsql/build/testrun/recovery/027_stream_...
--- /Users/admin/pgsql/src/test/regress/expected/indexing.out	2026-05-24 11:01:13
+++ /Users/admin/pgsql/build/testrun/recovery/027_stream_regress/data/results/indexing.out	2026-05-24 11:09:06
@@ -559,13 +559,14 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
-(4 rows)
+         relname          | indisvalid 
+--------------------------+------------
+ idxpart11_expr_idx       | f
+ idxpart11_expr_idx_ccaux | f
+ idxpart1_expr_idx        | f
+ idxpart2_expr_idx        | t
...
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/indexing.out /Users/admin/pgsql/build/testrun/regress/regress/resu...
--- /Users/admin/pgsql/src/test/regress/expected/indexing.out	2026-05-24 11:01:13
+++ /Users/admin/pgsql/build/testrun/regress/regress/results/indexing.out	2026-05-24 11:06:47
@@ -559,13 +559,14 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
-(4 rows)
+         relname          | indisvalid 
+--------------------------+------------
+ idxpart11_expr_idx       | f
+ idxpart11_expr_idx_ccaux | f
+ idxpart1_expr_idx        | f
+ idxpart2_expr_idx        | t
...
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/indexing.out /Users/admin/pgsql/build/testrun/test_plan_advice/001...
--- /Users/admin/pgsql/src/test/regress/expected/indexing.out	2026-05-24 11:01:13
+++ /Users/admin/pgsql/build/testrun/test_plan_advice/001_replan_regress/data/results/indexing.out	2026-05-24 11:06:49
@@ -559,13 +559,14 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
-(4 rows)
+         relname          | indisvalid 
+--------------------------+------------
+ idxpart11_expr_idx       | f
+ idxpart11_expr_idx_ccaux | f
+ idxpart1_expr_idx        | f
+ idxpart2_expr_idx        | t
...
Linux - Debian Trixie - Meson
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_p...
--- /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out	2026-05-24 11:01:14.759560371 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_upgrade/data/results/indexing.out	2026-05-24 11:06:58.310831594...
@@ -559,13 +559,14 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
-(4 rows)
+         relname          | indisvalid 
+--------------------------+------------
+ idxpart11_expr_idx       | f
+ idxpart11_expr_idx_ccaux | f
+ idxpart1_expr_idx        | f
+ idxpart2_expr_idx        | t
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out /tmp/cirrus-ci-build/build/testrun/recovery/027_str...
--- /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out	2026-05-24 11:01:14.759560371 +0000
+++ /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_regress/data/results/indexing.out	2026-05-24 11:08:39.3547629...
@@ -559,13 +559,14 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
-(4 rows)
+         relname          | indisvalid 
+--------------------------+------------
+ idxpart11_expr_idx       | f
+ idxpart11_expr_idx_ccaux | f
+ idxpart1_expr_idx        | f
+ idxpart2_expr_idx        | t
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out /tmp/cirrus-ci-build/build/testrun/regress/regress/...
--- /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out	2026-05-24 11:01:14.759560371 +0000
+++ /tmp/cirrus-ci-build/build/testrun/regress/regress/results/indexing.out	2026-05-24 11:06:58.038831805 +0000
@@ -559,13 +559,14 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
-(4 rows)
+         relname          | indisvalid 
+--------------------------+------------
+ idxpart11_expr_idx       | f
+ idxpart11_expr_idx_ccaux | f
+ idxpart1_expr_idx        | f
+ idxpart2_expr_idx        | t
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out /tmp/cirrus-ci-build/build/testrun/test_plan_advice...
--- /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out	2026-05-24 11:01:14.759560371 +0000
+++ /tmp/cirrus-ci-build/build/testrun/test_plan_advice/001_replan_regress/data/results/indexing.out	2026-05-24 11:07:06...
@@ -559,13 +559,14 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
-(4 rows)
+         relname          | indisvalid 
+--------------------------+------------
+ idxpart11_expr_idx       | f
+ idxpart11_expr_idx_ccaux | f
+ idxpart1_expr_idx        | f
+ idxpart2_expr_idx        | t
...
FreeBSD - Meson
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_p...
--- /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out	2026-05-24 11:01:14.631983000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_upgrade/data/results/indexing.out	2026-05-24 11:06:50.781580000...
@@ -559,13 +559,14 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
-(4 rows)
+         relname          | indisvalid 
+--------------------------+------------
+ idxpart11_expr_idx       | f
+ idxpart11_expr_idx_ccaux | f
+ idxpart1_expr_idx        | f
+ idxpart2_expr_idx        | t
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out /tmp/cirrus-ci-build/build/testrun/recovery/027_str...
--- /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out	2026-05-24 11:01:14.631983000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_regress/data/results/indexing.out	2026-05-24 11:08:41.6434830...
@@ -559,13 +559,14 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
-(4 rows)
+         relname          | indisvalid 
+--------------------------+------------
+ idxpart11_expr_idx       | f
+ idxpart11_expr_idx_ccaux | f
+ idxpart1_expr_idx        | f
+ idxpart2_expr_idx        | t
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out /tmp/cirrus-ci-build/build/testrun/regress/regress/...
--- /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out	2026-05-24 11:01:14.631983000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/regress/regress/results/indexing.out	2026-05-24 11:07:12.354098000 +0000
@@ -559,13 +559,14 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
-(4 rows)
+         relname          | indisvalid 
+--------------------------+------------
+ idxpart11_expr_idx       | f
+ idxpart11_expr_idx_ccaux | f
+ idxpart1_expr_idx        | f
+ idxpart2_expr_idx        | t
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out /tmp/cirrus-ci-build/build/testrun/test_plan_advice...
--- /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out	2026-05-24 11:01:14.631983000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/test_plan_advice/001_replan_regress/data/results/indexing.out	2026-05-24 11:07:22...
@@ -559,13 +559,14 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
-(4 rows)
+         relname          | indisvalid 
+--------------------------+------------
+ idxpart11_expr_idx       | f
+ idxpart11_expr_idx_ccaux | f
+ idxpart1_expr_idx        | f
+ idxpart2_expr_idx        | t
...
Linux - Debian Trixie - Autoconf
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out /tmp/cirrus-ci-build/src/bin/pg_upgrade/tmp_check/r...
--- /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out	2026-05-24 11:01:22.352965665 +0000
+++ /tmp/cirrus-ci-build/src/bin/pg_upgrade/tmp_check/results/indexing.out	2026-05-24 11:09:48.709621941 +0000
@@ -559,13 +559,14 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
-(4 rows)
+         relname          | indisvalid 
+--------------------------+------------
+ idxpart11_expr_idx       | f
+ idxpart11_expr_idx_ccaux | f
+ idxpart1_expr_idx        | f
+ idxpart2_expr_idx        | t
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out /tmp/cirrus-ci-build/src/test/modules/test_plan_adv...
--- /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out	2026-05-24 11:01:22.352965665 +0000
+++ /tmp/cirrus-ci-build/src/test/modules/test_plan_advice/tmp_check/results/indexing.out	2026-05-24 11:12:36.861554054 ...
@@ -559,13 +559,14 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
-(4 rows)
+         relname          | indisvalid 
+--------------------------+------------
+ idxpart11_expr_idx       | f
+ idxpart11_expr_idx_ccaux | f
+ idxpart1_expr_idx        | f
+ idxpart2_expr_idx        | t
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out /tmp/cirrus-ci-build/src/test/recovery/tmp_check/re...
--- /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out	2026-05-24 11:01:22.352965665 +0000
+++ /tmp/cirrus-ci-build/src/test/recovery/tmp_check/results/indexing.out	2026-05-24 11:12:55.049569599 +0000
@@ -559,13 +559,14 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
-(4 rows)
+         relname          | indisvalid 
+--------------------------+------------
+ idxpart11_expr_idx       | f
+ idxpart11_expr_idx_ccaux | f
+ idxpart1_expr_idx        | f
+ idxpart2_expr_idx        | t
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out /tmp/cirrus-ci-build/src/test/regress/results/index...
--- /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out	2026-05-24 11:01:22.352965665 +0000
+++ /tmp/cirrus-ci-build/src/test/regress/results/indexing.out	2026-05-24 11:09:49.289620653 +0000
@@ -559,13 +559,14 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
-(4 rows)
+         relname          | indisvalid 
+--------------------------+------------
+ idxpart11_expr_idx       | f
+ idxpart11_expr_idx_ccaux | f
+ idxpart1_expr_idx        | f
+ idxpart2_expr_idx        | t
...
NetBSD - Meson
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/indexing.out /home/postgres/postgres/build/testrun/pg_upgrade...
--- /home/postgres/postgres/src/test/regress/expected/indexing.out	2026-05-24 11:01:42.700845704 +0000
+++ /home/postgres/postgres/build/testrun/pg_upgrade/002_pg_upgrade/data/results/indexing.out	2026-05-24 11:05:37.730504...
@@ -559,13 +559,14 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
-(4 rows)
+         relname          | indisvalid 
+--------------------------+------------
+ idxpart11_expr_idx       | f
+ idxpart11_expr_idx_ccaux | f
+ idxpart1_expr_idx        | f
+ idxpart2_expr_idx        | t
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/indexing.out /home/postgres/postgres/build/testrun/recovery/0...
--- /home/postgres/postgres/src/test/regress/expected/indexing.out	2026-05-24 11:01:42.700845704 +0000
+++ /home/postgres/postgres/build/testrun/recovery/027_stream_regress/data/results/indexing.out	2026-05-24 11:06:35.3269...
@@ -559,13 +559,14 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
-(4 rows)
+         relname          | indisvalid 
+--------------------------+------------
+ idxpart11_expr_idx       | f
+ idxpart11_expr_idx_ccaux | f
+ idxpart1_expr_idx        | f
+ idxpart2_expr_idx        | t
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/indexing.out /home/postgres/postgres/build/testrun/regress/re...
--- /home/postgres/postgres/src/test/regress/expected/indexing.out	2026-05-24 11:01:42.700845704 +0000
+++ /home/postgres/postgres/build/testrun/regress/regress/results/indexing.out	2026-05-24 11:05:31.258216841 +0000
@@ -559,13 +559,14 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
-(4 rows)
+         relname          | indisvalid 
+--------------------------+------------
+ idxpart11_expr_idx       | f
+ idxpart11_expr_idx_ccaux | f
+ idxpart1_expr_idx        | f
+ idxpart2_expr_idx        | t
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/indexing.out /home/postgres/postgres/build/testrun/test_plan_...
--- /home/postgres/postgres/src/test/regress/expected/indexing.out	2026-05-24 11:01:42.700845704 +0000
+++ /home/postgres/postgres/build/testrun/test_plan_advice/001_replan_regress/data/results/indexing.out	2026-05-24 11:05...
@@ -559,13 +559,14 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
-(4 rows)
+         relname          | indisvalid 
+--------------------------+------------
+ idxpart11_expr_idx       | f
+ idxpart11_expr_idx_ccaux | f
+ idxpart1_expr_idx        | f
+ idxpart2_expr_idx        | t
...
59/6059 Improving the names generated for indexes on expressions
Windows - Server 2022, VS 2019 - Meson & ninja
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/indexing.out C:/cirrus/build/testrun/pg_upgrade/002_pg_...
--- C:/cirrus/src/test/regress/expected/indexing.out	2026-05-24 08:43:55.842219800 +0000
+++ C:/cirrus/build/testrun/pg_upgrade/002_pg_upgrade/data/results/indexing.out	2026-05-24 08:49:47.513014100 +0000
@@ -559,41 +559,46 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
+      relname      | indisvalid 
+-------------------+------------
+ idxpart11_a_b_idx | f
+ idxpart1_a_b_idx  | f
+ idxpart2_a_b_idx  | t
+ idxpart_a_b_idx   | f
 (4 rows)
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/indexing.out C:/cirrus/build/testrun/recovery/027_strea...
--- C:/cirrus/src/test/regress/expected/indexing.out	2026-05-24 08:43:55.842219800 +0000
+++ C:/cirrus/build/testrun/recovery/027_stream_regress/data/results/indexing.out	2026-05-24 08:53:44.739267600 +0000
@@ -559,41 +559,46 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
+      relname      | indisvalid 
+-------------------+------------
+ idxpart11_a_b_idx | f
+ idxpart1_a_b_idx  | f
+ idxpart2_a_b_idx  | t
+ idxpart_a_b_idx   | f
 (4 rows)
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/indexing.out C:/cirrus/build/testrun/regress/regress/re...
--- C:/cirrus/src/test/regress/expected/indexing.out	2026-05-24 08:43:55.842219800 +0000
+++ C:/cirrus/build/testrun/regress/regress/results/indexing.out	2026-05-24 08:49:41.907623400 +0000
@@ -559,41 +559,46 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
+      relname      | indisvalid 
+-------------------+------------
+ idxpart11_a_b_idx | f
+ idxpart1_a_b_idx  | f
+ idxpart2_a_b_idx  | t
+ idxpart_a_b_idx   | f
 (4 rows)
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/indexing.out C:/cirrus/build/testrun/test_plan_advice/0...
--- C:/cirrus/src/test/regress/expected/indexing.out	2026-05-24 08:43:55.842219800 +0000
+++ C:/cirrus/build/testrun/test_plan_advice/001_replan_regress/data/results/indexing.out	2026-05-24 08:49:34.868967400 ...
@@ -559,41 +559,46 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
+      relname      | indisvalid 
+-------------------+------------
+ idxpart11_a_b_idx | f
+ idxpart1_a_b_idx  | f
+ idxpart2_a_b_idx  | t
+ idxpart_a_b_idx   | f
 (4 rows)
...
macOS - Sequoia - Meson
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/indexing.out /Users/admin/pgsql/build/testrun/pg_upgrade/002_pg_up...
--- /Users/admin/pgsql/src/test/regress/expected/indexing.out	2026-05-24 08:43:14
+++ /Users/admin/pgsql/build/testrun/pg_upgrade/002_pg_upgrade/data/results/indexing.out	2026-05-24 08:47:55
@@ -559,41 +559,46 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
+      relname      | indisvalid 
+-------------------+------------
+ idxpart11_a_b_idx | f
+ idxpart1_a_b_idx  | f
+ idxpart2_a_b_idx  | t
+ idxpart_a_b_idx   | f
 (4 rows)
...
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/indexing.out /Users/admin/pgsql/build/testrun/recovery/027_stream_...
--- /Users/admin/pgsql/src/test/regress/expected/indexing.out	2026-05-24 08:43:14
+++ /Users/admin/pgsql/build/testrun/recovery/027_stream_regress/data/results/indexing.out	2026-05-24 08:50:31
@@ -559,41 +559,46 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
+      relname      | indisvalid 
+-------------------+------------
+ idxpart11_a_b_idx | f
+ idxpart1_a_b_idx  | f
+ idxpart2_a_b_idx  | t
+ idxpart_a_b_idx   | f
 (4 rows)
...
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/indexing.out /Users/admin/pgsql/build/testrun/regress/regress/resu...
--- /Users/admin/pgsql/src/test/regress/expected/indexing.out	2026-05-24 08:43:14
+++ /Users/admin/pgsql/build/testrun/regress/regress/results/indexing.out	2026-05-24 08:47:56
@@ -559,41 +559,46 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
+      relname      | indisvalid 
+-------------------+------------
+ idxpart11_a_b_idx | f
+ idxpart1_a_b_idx  | f
+ idxpart2_a_b_idx  | t
+ idxpart_a_b_idx   | f
 (4 rows)
...
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/indexing.out /Users/admin/pgsql/build/testrun/test_plan_advice/001...
--- /Users/admin/pgsql/src/test/regress/expected/indexing.out	2026-05-24 08:43:14
+++ /Users/admin/pgsql/build/testrun/test_plan_advice/001_replan_regress/data/results/indexing.out	2026-05-24 08:48:02
@@ -559,41 +559,46 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
+      relname      | indisvalid 
+-------------------+------------
+ idxpart11_a_b_idx | f
+ idxpart1_a_b_idx  | f
+ idxpart2_a_b_idx  | t
+ idxpart_a_b_idx   | f
 (4 rows)
...
Linux - Debian Trixie - Meson
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_p...
--- /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out	2026-05-24 08:43:44.838754761 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_upgrade/data/results/indexing.out	2026-05-24 08:49:00.380089319...
@@ -559,41 +559,46 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
+      relname      | indisvalid 
+-------------------+------------
+ idxpart11_a_b_idx | f
+ idxpart1_a_b_idx  | f
+ idxpart2_a_b_idx  | t
+ idxpart_a_b_idx   | f
 (4 rows)
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out /tmp/cirrus-ci-build/build/testrun/recovery/027_str...
--- /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out	2026-05-24 08:43:44.838754761 +0000
+++ /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_regress/data/results/indexing.out	2026-05-24 08:50:33.9072683...
@@ -559,41 +559,46 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
+      relname      | indisvalid 
+-------------------+------------
+ idxpart11_a_b_idx | f
+ idxpart1_a_b_idx  | f
+ idxpart2_a_b_idx  | t
+ idxpart_a_b_idx   | f
 (4 rows)
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out /tmp/cirrus-ci-build/build/testrun/regress/regress/...
--- /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out	2026-05-24 08:43:44.838754761 +0000
+++ /tmp/cirrus-ci-build/build/testrun/regress/regress/results/indexing.out	2026-05-24 08:48:59.576098630 +0000
@@ -559,41 +559,46 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
+      relname      | indisvalid 
+-------------------+------------
+ idxpart11_a_b_idx | f
+ idxpart1_a_b_idx  | f
+ idxpart2_a_b_idx  | t
+ idxpart_a_b_idx   | f
 (4 rows)
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out /tmp/cirrus-ci-build/build/testrun/test_plan_advice...
--- /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out	2026-05-24 08:43:44.838754761 +0000
+++ /tmp/cirrus-ci-build/build/testrun/test_plan_advice/001_replan_regress/data/results/indexing.out	2026-05-24 08:49:06...
@@ -559,41 +559,46 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
+      relname      | indisvalid 
+-------------------+------------
+ idxpart11_a_b_idx | f
+ idxpart1_a_b_idx  | f
+ idxpart2_a_b_idx  | t
+ idxpart_a_b_idx   | f
 (4 rows)
...
Linux - Debian Trixie - Autoconf
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out /tmp/cirrus-ci-build/src/bin/pg_upgrade/tmp_check/r...
--- /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out	2026-05-24 08:43:18.402352305 +0000
+++ /tmp/cirrus-ci-build/src/bin/pg_upgrade/tmp_check/results/indexing.out	2026-05-24 08:53:29.515985330 +0000
@@ -559,41 +559,46 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
+      relname      | indisvalid 
+-------------------+------------
+ idxpart11_a_b_idx | f
+ idxpart1_a_b_idx  | f
+ idxpart2_a_b_idx  | t
+ idxpart_a_b_idx   | f
 (4 rows)
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out /tmp/cirrus-ci-build/src/test/modules/test_plan_adv...
--- /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out	2026-05-24 08:43:18.402352305 +0000
+++ /tmp/cirrus-ci-build/src/test/modules/test_plan_advice/tmp_check/results/indexing.out	2026-05-24 08:55:32.397937452 ...
@@ -559,41 +559,46 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
+      relname      | indisvalid 
+-------------------+------------
+ idxpart11_a_b_idx | f
+ idxpart1_a_b_idx  | f
+ idxpart2_a_b_idx  | t
+ idxpart_a_b_idx   | f
 (4 rows)
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out /tmp/cirrus-ci-build/src/test/recovery/tmp_check/re...
--- /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out	2026-05-24 08:43:18.402352305 +0000
+++ /tmp/cirrus-ci-build/src/test/recovery/tmp_check/results/indexing.out	2026-05-24 08:55:00.853220793 +0000
@@ -559,41 +559,46 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
+      relname      | indisvalid 
+-------------------+------------
+ idxpart11_a_b_idx | f
+ idxpart1_a_b_idx  | f
+ idxpart2_a_b_idx  | t
+ idxpart_a_b_idx   | f
 (4 rows)
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out /tmp/cirrus-ci-build/src/test/regress/results/index...
--- /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out	2026-05-24 08:43:18.402352305 +0000
+++ /tmp/cirrus-ci-build/src/test/regress/results/indexing.out	2026-05-24 08:50:21.421872802 +0000
@@ -559,41 +559,46 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
+      relname      | indisvalid 
+-------------------+------------
+ idxpart11_a_b_idx | f
+ idxpart1_a_b_idx  | f
+ idxpart2_a_b_idx  | t
+ idxpart_a_b_idx   | f
 (4 rows)
...
NetBSD - Meson
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/indexing.out /home/postgres/postgres/build/testrun/pg_upgrade...
--- /home/postgres/postgres/src/test/regress/expected/indexing.out	2026-05-24 08:44:35.224771940 +0000
+++ /home/postgres/postgres/build/testrun/pg_upgrade/002_pg_upgrade/data/results/indexing.out	2026-05-24 08:48:26.487456...
@@ -559,41 +559,46 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
+      relname      | indisvalid 
+-------------------+------------
+ idxpart11_a_b_idx | f
+ idxpart1_a_b_idx  | f
+ idxpart2_a_b_idx  | t
+ idxpart_a_b_idx   | f
 (4 rows)
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/indexing.out /home/postgres/postgres/build/testrun/recovery/0...
--- /home/postgres/postgres/src/test/regress/expected/indexing.out	2026-05-24 08:44:35.224771940 +0000
+++ /home/postgres/postgres/build/testrun/recovery/027_stream_regress/data/results/indexing.out	2026-05-24 08:49:13.1701...
@@ -559,41 +559,46 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
+      relname      | indisvalid 
+-------------------+------------
+ idxpart11_a_b_idx | f
+ idxpart1_a_b_idx  | f
+ idxpart2_a_b_idx  | t
+ idxpart_a_b_idx   | f
 (4 rows)
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/indexing.out /home/postgres/postgres/build/testrun/regress/re...
--- /home/postgres/postgres/src/test/regress/expected/indexing.out	2026-05-24 08:44:35.224771940 +0000
+++ /home/postgres/postgres/build/testrun/regress/regress/results/indexing.out	2026-05-24 08:48:15.447190701 +0000
@@ -559,41 +559,46 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
+      relname      | indisvalid 
+-------------------+------------
+ idxpart11_a_b_idx | f
+ idxpart1_a_b_idx  | f
+ idxpart2_a_b_idx  | t
+ idxpart_a_b_idx   | f
 (4 rows)
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/indexing.out /home/postgres/postgres/build/testrun/test_plan_...
--- /home/postgres/postgres/src/test/regress/expected/indexing.out	2026-05-24 08:44:35.224771940 +0000
+++ /home/postgres/postgres/build/testrun/test_plan_advice/001_replan_regress/data/results/indexing.out	2026-05-24 08:48...
@@ -559,41 +559,46 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
+      relname      | indisvalid 
+-------------------+------------
+ idxpart11_a_b_idx | f
+ idxpart1_a_b_idx  | f
+ idxpart2_a_b_idx  | t
+ idxpart_a_b_idx   | f
 (4 rows)
...
FreeBSD - Meson
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_p...
--- /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out	2026-05-24 08:43:46.276595000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_upgrade/data/results/indexing.out	2026-05-24 08:49:55.651272000...
@@ -559,41 +559,46 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
+      relname      | indisvalid 
+-------------------+------------
+ idxpart11_a_b_idx | f
+ idxpart1_a_b_idx  | f
+ idxpart2_a_b_idx  | t
+ idxpart_a_b_idx   | f
 (4 rows)
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out /tmp/cirrus-ci-build/build/testrun/recovery/027_str...
--- /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out	2026-05-24 08:43:46.276595000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_regress/data/results/indexing.out	2026-05-24 08:51:20.8855050...
@@ -559,41 +559,46 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
+      relname      | indisvalid 
+-------------------+------------
+ idxpart11_a_b_idx | f
+ idxpart1_a_b_idx  | f
+ idxpart2_a_b_idx  | t
+ idxpart_a_b_idx   | f
 (4 rows)
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out /tmp/cirrus-ci-build/build/testrun/regress/regress/...
--- /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out	2026-05-24 08:43:46.276595000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/regress/regress/results/indexing.out	2026-05-24 08:49:51.307955000 +0000
@@ -559,41 +559,46 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
+      relname      | indisvalid 
+-------------------+------------
+ idxpart11_a_b_idx | f
+ idxpart1_a_b_idx  | f
+ idxpart2_a_b_idx  | t
+ idxpart_a_b_idx   | f
 (4 rows)
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out /tmp/cirrus-ci-build/build/testrun/test_plan_advice...
--- /tmp/cirrus-ci-build/src/test/regress/expected/indexing.out	2026-05-24 08:43:46.276595000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/test_plan_advice/001_replan_regress/data/results/indexing.out	2026-05-24 08:50:04...
@@ -559,41 +559,46 @@
 ERROR:  division by zero
 select relname, indisvalid from pg_class join pg_index on indexrelid = oid
    where relname like 'idxpart%' order by relname;
-      relname       | indisvalid 
---------------------+------------
- idxpart11_expr_idx | f
- idxpart1_expr_idx  | f
- idxpart2_expr_idx  | t
- idxpart_expr_idx   | f
+      relname      | indisvalid 
+-------------------+------------
+ idxpart11_a_b_idx | f
+ idxpart1_a_b_idx  | f
+ idxpart2_a_b_idx  | t
+ idxpart_a_b_idx   | f
 (4 rows)
...
59/6397 extended statistic (examine_variable) ignored CollateExpr
Linux - Debian Trixie - Meson
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/collate.icu.utf8.out /tmp/cirrus-ci-build/build/testrun/pg_upgra...
--- /tmp/cirrus-ci-build/src/test/regress/expected/collate.icu.utf8.out	2026-05-15 22:13:00.003948155 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_upgrade/data/results/collate.icu.utf8.out	2026-05-15 22:16:20.8...
@@ -3321,15 +3321,18 @@
   FROM eager_agg_t1 t1
   JOIN eager_agg_t2 t2 ON t1.val = t2.val COLLATE "C"
 GROUP BY t1.id;
-                       QUERY PLAN                       
---------------------------------------------------------
- HashAggregate
+                         QUERY PLAN                         
+------------------------------------------------------------
+ GroupAggregate
    Group Key: t1.id
-   ->  Nested Loop
-         Join Filter: ((t1.val)::text = (t2.val)::text)
-         ->  Seq Scan on eager_agg_t2 t2
-         ->  Seq Scan on eager_agg_t1 t1
-(6 rows)
+   ->  Sort
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/collate.icu.utf8.out /tmp/cirrus-ci-build/build/testrun/recovery...
--- /tmp/cirrus-ci-build/src/test/regress/expected/collate.icu.utf8.out	2026-05-15 22:13:00.003948155 +0000
+++ /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_regress/data/results/collate.icu.utf8.out	2026-05-15 22:17:55...
@@ -3321,15 +3321,18 @@
   FROM eager_agg_t1 t1
   JOIN eager_agg_t2 t2 ON t1.val = t2.val COLLATE "C"
 GROUP BY t1.id;
-                       QUERY PLAN                       
---------------------------------------------------------
- HashAggregate
+                         QUERY PLAN                         
+------------------------------------------------------------
+ GroupAggregate
    Group Key: t1.id
-   ->  Nested Loop
-         Join Filter: ((t1.val)::text = (t2.val)::text)
-         ->  Seq Scan on eager_agg_t2 t2
-         ->  Seq Scan on eager_agg_t1 t1
-(6 rows)
+   ->  Sort
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/collate.icu.utf8.out /tmp/cirrus-ci-build/build/testrun/regress/...
--- /tmp/cirrus-ci-build/src/test/regress/expected/collate.icu.utf8.out	2026-05-15 22:13:00.003948155 +0000
+++ /tmp/cirrus-ci-build/build/testrun/regress/regress/results/collate.icu.utf8.out	2026-05-15 22:16:17.094675949 +0000
@@ -3321,15 +3321,18 @@
   FROM eager_agg_t1 t1
   JOIN eager_agg_t2 t2 ON t1.val = t2.val COLLATE "C"
 GROUP BY t1.id;
-                       QUERY PLAN                       
---------------------------------------------------------
- HashAggregate
+                         QUERY PLAN                         
+------------------------------------------------------------
+ GroupAggregate
    Group Key: t1.id
-   ->  Nested Loop
-         Join Filter: ((t1.val)::text = (t2.val)::text)
-         ->  Seq Scan on eager_agg_t2 t2
-         ->  Seq Scan on eager_agg_t1 t1
-(6 rows)
+   ->  Sort
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/collate.icu.utf8.out /tmp/cirrus-ci-build/build/testrun/test_pla...
--- /tmp/cirrus-ci-build/src/test/regress/expected/collate.icu.utf8.out	2026-05-15 22:13:00.003948155 +0000
+++ /tmp/cirrus-ci-build/build/testrun/test_plan_advice/001_replan_regress/data/results/collate.icu.utf8.out	2026-05-15 ...
@@ -3321,15 +3321,18 @@
   FROM eager_agg_t1 t1
   JOIN eager_agg_t2 t2 ON t1.val = t2.val COLLATE "C"
 GROUP BY t1.id;
-                       QUERY PLAN                       
---------------------------------------------------------
- HashAggregate
+                         QUERY PLAN                         
+------------------------------------------------------------
+ GroupAggregate
    Group Key: t1.id
-   ->  Nested Loop
-         Join Filter: ((t1.val)::text = (t2.val)::text)
-         ->  Seq Scan on eager_agg_t2 t2
-         ->  Seq Scan on eager_agg_t1 t1
-(6 rows)
+   ->  Sort
...
macOS - Sequoia - Meson
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/collate.icu.utf8.out /Users/admin/pgsql/build/testrun/pg_upgrade/0...
--- /Users/admin/pgsql/src/test/regress/expected/collate.icu.utf8.out	2026-05-15 22:13:01
+++ /Users/admin/pgsql/build/testrun/pg_upgrade/002_pg_upgrade/data/results/collate.icu.utf8.out	2026-05-15 22:17:35
@@ -3321,15 +3321,18 @@
   FROM eager_agg_t1 t1
   JOIN eager_agg_t2 t2 ON t1.val = t2.val COLLATE "C"
 GROUP BY t1.id;
-                       QUERY PLAN                       
---------------------------------------------------------
- HashAggregate
+                         QUERY PLAN                         
+------------------------------------------------------------
+ GroupAggregate
    Group Key: t1.id
-   ->  Nested Loop
-         Join Filter: ((t1.val)::text = (t2.val)::text)
-         ->  Seq Scan on eager_agg_t2 t2
-         ->  Seq Scan on eager_agg_t1 t1
-(6 rows)
+   ->  Sort
...
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/collate.icu.utf8.out /Users/admin/pgsql/build/testrun/recovery/027...
--- /Users/admin/pgsql/src/test/regress/expected/collate.icu.utf8.out	2026-05-15 22:13:01
+++ /Users/admin/pgsql/build/testrun/recovery/027_stream_regress/data/results/collate.icu.utf8.out	2026-05-15 22:20:49
@@ -3321,15 +3321,18 @@
   FROM eager_agg_t1 t1
   JOIN eager_agg_t2 t2 ON t1.val = t2.val COLLATE "C"
 GROUP BY t1.id;
-                       QUERY PLAN                       
---------------------------------------------------------
- HashAggregate
+                         QUERY PLAN                         
+------------------------------------------------------------
+ GroupAggregate
    Group Key: t1.id
-   ->  Nested Loop
-         Join Filter: ((t1.val)::text = (t2.val)::text)
-         ->  Seq Scan on eager_agg_t2 t2
-         ->  Seq Scan on eager_agg_t1 t1
-(6 rows)
+   ->  Sort
...
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/collate.icu.utf8.out /Users/admin/pgsql/build/testrun/regress/regr...
--- /Users/admin/pgsql/src/test/regress/expected/collate.icu.utf8.out	2026-05-15 22:13:01
+++ /Users/admin/pgsql/build/testrun/regress/regress/results/collate.icu.utf8.out	2026-05-15 22:17:29
@@ -3321,15 +3321,18 @@
   FROM eager_agg_t1 t1
   JOIN eager_agg_t2 t2 ON t1.val = t2.val COLLATE "C"
 GROUP BY t1.id;
-                       QUERY PLAN                       
---------------------------------------------------------
- HashAggregate
+                         QUERY PLAN                         
+------------------------------------------------------------
+ GroupAggregate
    Group Key: t1.id
-   ->  Nested Loop
-         Join Filter: ((t1.val)::text = (t2.val)::text)
-         ->  Seq Scan on eager_agg_t2 t2
-         ->  Seq Scan on eager_agg_t1 t1
-(6 rows)
+   ->  Sort
...
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/collate.icu.utf8.out /Users/admin/pgsql/build/testrun/test_plan_ad...
--- /Users/admin/pgsql/src/test/regress/expected/collate.icu.utf8.out	2026-05-15 22:13:01
+++ /Users/admin/pgsql/build/testrun/test_plan_advice/001_replan_regress/data/results/collate.icu.utf8.out	2026-05-15 22...
@@ -3321,15 +3321,18 @@
   FROM eager_agg_t1 t1
   JOIN eager_agg_t2 t2 ON t1.val = t2.val COLLATE "C"
 GROUP BY t1.id;
-                       QUERY PLAN                       
---------------------------------------------------------
- HashAggregate
+                         QUERY PLAN                         
+------------------------------------------------------------
+ GroupAggregate
    Group Key: t1.id
-   ->  Nested Loop
-         Join Filter: ((t1.val)::text = (t2.val)::text)
-         ->  Seq Scan on eager_agg_t2 t2
-         ->  Seq Scan on eager_agg_t1 t1
-(6 rows)
+   ->  Sort
...
NetBSD - Meson
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/collate.icu.utf8.out /home/postgres/postgres/build/testrun/pg...
--- /home/postgres/postgres/src/test/regress/expected/collate.icu.utf8.out	2026-05-15 22:13:28.525096246 +0000
+++ /home/postgres/postgres/build/testrun/pg_upgrade/002_pg_upgrade/data/results/collate.icu.utf8.out	2026-05-15 22:16:1...
@@ -3321,15 +3321,18 @@
   FROM eager_agg_t1 t1
   JOIN eager_agg_t2 t2 ON t1.val = t2.val COLLATE "C"
 GROUP BY t1.id;
-                       QUERY PLAN                       
---------------------------------------------------------
- HashAggregate
+                         QUERY PLAN                         
+------------------------------------------------------------
+ GroupAggregate
    Group Key: t1.id
-   ->  Nested Loop
-         Join Filter: ((t1.val)::text = (t2.val)::text)
-         ->  Seq Scan on eager_agg_t2 t2
-         ->  Seq Scan on eager_agg_t1 t1
-(6 rows)
+   ->  Sort
...
FreeBSD - Meson
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/collate.icu.utf8.out /tmp/cirrus-ci-build/build/testrun/pg_upgra...
--- /tmp/cirrus-ci-build/src/test/regress/expected/collate.icu.utf8.out	2026-05-15 22:13:16.985472000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_upgrade/data/results/collate.icu.utf8.out	2026-05-15 22:16:28.9...
@@ -3321,15 +3321,18 @@
   FROM eager_agg_t1 t1
   JOIN eager_agg_t2 t2 ON t1.val = t2.val COLLATE "C"
 GROUP BY t1.id;
-                       QUERY PLAN                       
---------------------------------------------------------
- HashAggregate
+                         QUERY PLAN                         
+------------------------------------------------------------
+ GroupAggregate
    Group Key: t1.id
-   ->  Nested Loop
-         Join Filter: ((t1.val)::text = (t2.val)::text)
-         ->  Seq Scan on eager_agg_t2 t2
-         ->  Seq Scan on eager_agg_t1 t1
-(6 rows)
+   ->  Sort
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/collate.icu.utf8.out /tmp/cirrus-ci-build/build/testrun/recovery...
--- /tmp/cirrus-ci-build/src/test/regress/expected/collate.icu.utf8.out	2026-05-15 22:13:16.985472000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_regress/data/results/collate.icu.utf8.out	2026-05-15 22:18:10...
@@ -3321,15 +3321,18 @@
   FROM eager_agg_t1 t1
   JOIN eager_agg_t2 t2 ON t1.val = t2.val COLLATE "C"
 GROUP BY t1.id;
-                       QUERY PLAN                       
---------------------------------------------------------
- HashAggregate
+                         QUERY PLAN                         
+------------------------------------------------------------
+ GroupAggregate
    Group Key: t1.id
-   ->  Nested Loop
-         Join Filter: ((t1.val)::text = (t2.val)::text)
-         ->  Seq Scan on eager_agg_t2 t2
-         ->  Seq Scan on eager_agg_t1 t1
-(6 rows)
+   ->  Sort
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/collate.icu.utf8.out /tmp/cirrus-ci-build/build/testrun/regress/...
--- /tmp/cirrus-ci-build/src/test/regress/expected/collate.icu.utf8.out	2026-05-15 22:13:16.985472000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/regress/regress/results/collate.icu.utf8.out	2026-05-15 22:16:23.767570000 +0000
@@ -3321,15 +3321,18 @@
   FROM eager_agg_t1 t1
   JOIN eager_agg_t2 t2 ON t1.val = t2.val COLLATE "C"
 GROUP BY t1.id;
-                       QUERY PLAN                       
---------------------------------------------------------
- HashAggregate
+                         QUERY PLAN                         
+------------------------------------------------------------
+ GroupAggregate
    Group Key: t1.id
-   ->  Nested Loop
-         Join Filter: ((t1.val)::text = (t2.val)::text)
-         ->  Seq Scan on eager_agg_t2 t2
-         ->  Seq Scan on eager_agg_t1 t1
-(6 rows)
+   ->  Sort
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/collate.icu.utf8.out /tmp/cirrus-ci-build/build/testrun/test_pla...
--- /tmp/cirrus-ci-build/src/test/regress/expected/collate.icu.utf8.out	2026-05-15 22:13:16.985472000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/test_plan_advice/001_replan_regress/data/results/collate.icu.utf8.out	2026-05-15 ...
@@ -3321,15 +3321,18 @@
   FROM eager_agg_t1 t1
   JOIN eager_agg_t2 t2 ON t1.val = t2.val COLLATE "C"
 GROUP BY t1.id;
-                       QUERY PLAN                       
---------------------------------------------------------
- HashAggregate
+                         QUERY PLAN                         
+------------------------------------------------------------
+ GroupAggregate
    Group Key: t1.id
-   ->  Nested Loop
-         Join Filter: ((t1.val)::text = (t2.val)::text)
-         ->  Seq Scan on eager_agg_t2 t2
-         ->  Seq Scan on eager_agg_t1 t1
-(6 rows)
+   ->  Sort
...
Linux - Debian Trixie - Autoconf
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/collate.icu.utf8.out /tmp/cirrus-ci-build/src/bin/pg_upgrade/tmp...
--- /tmp/cirrus-ci-build/src/test/regress/expected/collate.icu.utf8.out	2026-05-15 22:13:14.141404063 +0000
+++ /tmp/cirrus-ci-build/src/bin/pg_upgrade/tmp_check/results/collate.icu.utf8.out	2026-05-15 22:20:41.984142334 +0000
@@ -3321,15 +3321,18 @@
   FROM eager_agg_t1 t1
   JOIN eager_agg_t2 t2 ON t1.val = t2.val COLLATE "C"
 GROUP BY t1.id;
-                       QUERY PLAN                       
---------------------------------------------------------
- HashAggregate
+                         QUERY PLAN                         
+------------------------------------------------------------
+ GroupAggregate
    Group Key: t1.id
-   ->  Nested Loop
-         Join Filter: ((t1.val)::text = (t2.val)::text)
-         ->  Seq Scan on eager_agg_t2 t2
-         ->  Seq Scan on eager_agg_t1 t1
-(6 rows)
+   ->  Sort
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/collate.icu.utf8.out /tmp/cirrus-ci-build/src/test/modules/test_...
--- /tmp/cirrus-ci-build/src/test/regress/expected/collate.icu.utf8.out	2026-05-15 22:13:14.141404063 +0000
+++ /tmp/cirrus-ci-build/src/test/modules/test_plan_advice/tmp_check/results/collate.icu.utf8.out	2026-05-15 22:23:21.26...
@@ -3321,15 +3321,18 @@
   FROM eager_agg_t1 t1
   JOIN eager_agg_t2 t2 ON t1.val = t2.val COLLATE "C"
 GROUP BY t1.id;
-                       QUERY PLAN                       
---------------------------------------------------------
- HashAggregate
+                         QUERY PLAN                         
+------------------------------------------------------------
+ GroupAggregate
    Group Key: t1.id
-   ->  Nested Loop
-         Join Filter: ((t1.val)::text = (t2.val)::text)
-         ->  Seq Scan on eager_agg_t2 t2
-         ->  Seq Scan on eager_agg_t1 t1
-(6 rows)
+   ->  Sort
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/collate.icu.utf8.out /tmp/cirrus-ci-build/src/test/recovery/tmp_...
--- /tmp/cirrus-ci-build/src/test/regress/expected/collate.icu.utf8.out	2026-05-15 22:13:14.141404063 +0000
+++ /tmp/cirrus-ci-build/src/test/recovery/tmp_check/results/collate.icu.utf8.out	2026-05-15 22:22:11.244103875 +0000
@@ -3321,15 +3321,18 @@
   FROM eager_agg_t1 t1
   JOIN eager_agg_t2 t2 ON t1.val = t2.val COLLATE "C"
 GROUP BY t1.id;
-                       QUERY PLAN                       
---------------------------------------------------------
- HashAggregate
+                         QUERY PLAN                         
+------------------------------------------------------------
+ GroupAggregate
    Group Key: t1.id
-   ->  Nested Loop
-         Join Filter: ((t1.val)::text = (t2.val)::text)
-         ->  Seq Scan on eager_agg_t2 t2
-         ->  Seq Scan on eager_agg_t1 t1
-(6 rows)
+   ->  Sort
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/collate.icu.utf8.out /tmp/cirrus-ci-build/src/test/regress/resul...
--- /tmp/cirrus-ci-build/src/test/regress/expected/collate.icu.utf8.out	2026-05-15 22:13:14.141404063 +0000
+++ /tmp/cirrus-ci-build/src/test/regress/results/collate.icu.utf8.out	2026-05-15 22:18:02.308055377 +0000
@@ -3321,15 +3321,18 @@
   FROM eager_agg_t1 t1
   JOIN eager_agg_t2 t2 ON t1.val = t2.val COLLATE "C"
 GROUP BY t1.id;
-                       QUERY PLAN                       
---------------------------------------------------------
- HashAggregate
+                         QUERY PLAN                         
+------------------------------------------------------------
+ GroupAggregate
    Group Key: t1.id
-   ->  Nested Loop
-         Join Filter: ((t1.val)::text = (t2.val)::text)
-         ->  Seq Scan on eager_agg_t2 t2
-         ->  Seq Scan on eager_agg_t1 t1
-(6 rows)
+   ->  Sort
...
59/6270 skip check constraints verification for unaffected columns during UPDATE
macOS - Sequoia - Meson
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/for_portion_of.out /Users/admin/pgsql/build/testrun/pg_upgrade/002...
--- /Users/admin/pgsql/src/test/regress/expected/for_portion_of.out	2026-05-05 07:10:48
+++ /Users/admin/pgsql/build/testrun/pg_upgrade/002_pg_upgrade/data/results/for_portion_of.out	2026-05-05 07:13:30
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/for_portion_of.out /Users/admin/pgsql/build/testrun/recovery/027_s...
--- /Users/admin/pgsql/src/test/regress/expected/for_portion_of.out	2026-05-05 07:10:48
+++ /Users/admin/pgsql/build/testrun/recovery/027_stream_regress/data/results/for_portion_of.out	2026-05-05 07:14:55
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/for_portion_of.out /Users/admin/pgsql/build/testrun/regress/regres...
--- /Users/admin/pgsql/src/test/regress/expected/for_portion_of.out	2026-05-05 07:10:48
+++ /Users/admin/pgsql/build/testrun/regress/regress/results/for_portion_of.out	2026-05-05 07:13:25
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/for_portion_of.out /Users/admin/pgsql/build/testrun/test_plan_advi...
--- /Users/admin/pgsql/src/test/regress/expected/for_portion_of.out	2026-05-05 07:10:48
+++ /Users/admin/pgsql/build/testrun/test_plan_advice/001_replan_regress/data/results/for_portion_of.out	2026-05-05 07:1...
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
Windows - Server 2022, VS 2019 - Meson & ninja
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/for_portion_of.out C:/cirrus/build/testrun/pg_upgrade/0...
--- C:/cirrus/src/test/regress/expected/for_portion_of.out	2026-05-05 07:12:28.222315600 +0000
+++ C:/cirrus/build/testrun/pg_upgrade/002_pg_upgrade/data/results/for_portion_of.out	2026-05-05 07:15:51.836766400 +000...
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/for_portion_of.out C:/cirrus/build/testrun/recovery/027...
--- C:/cirrus/src/test/regress/expected/for_portion_of.out	2026-05-05 07:12:28.222315600 +0000
+++ C:/cirrus/build/testrun/recovery/027_stream_regress/data/results/for_portion_of.out	2026-05-05 07:19:49.775743200 +0...
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/for_portion_of.out C:/cirrus/build/testrun/regress/regr...
--- C:/cirrus/src/test/regress/expected/for_portion_of.out	2026-05-05 07:12:28.222315600 +0000
+++ C:/cirrus/build/testrun/regress/regress/results/for_portion_of.out	2026-05-05 07:15:37.093581800 +0000
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/for_portion_of.out C:/cirrus/build/testrun/test_plan_ad...
--- C:/cirrus/src/test/regress/expected/for_portion_of.out	2026-05-05 07:12:28.222315600 +0000
+++ C:/cirrus/build/testrun/test_plan_advice/001_replan_regress/data/results/for_portion_of.out	2026-05-05 07:15:42.1458...
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
Linux - Debian Trixie - Meson
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/for_portion_of.out /tmp/cirrus-ci-build/build/testrun/pg_upgrade...
--- /tmp/cirrus-ci-build/src/test/regress/expected/for_portion_of.out	2026-05-05 07:11:09.594871958 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_upgrade/data/results/for_portion_of.out	2026-05-05 07:14:54.484...
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/for_portion_of.out /tmp/cirrus-ci-build/build/testrun/recovery/0...
--- /tmp/cirrus-ci-build/src/test/regress/expected/for_portion_of.out	2026-05-05 07:11:09.594871958 +0000
+++ /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_regress/data/results/for_portion_of.out	2026-05-05 07:16:41.8...
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/for_portion_of.out /tmp/cirrus-ci-build/build/testrun/regress/re...
--- /tmp/cirrus-ci-build/src/test/regress/expected/for_portion_of.out	2026-05-05 07:11:09.594871958 +0000
+++ /tmp/cirrus-ci-build/build/testrun/regress/regress/results/for_portion_of.out	2026-05-05 07:14:54.676257881 +0000
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/for_portion_of.out /tmp/cirrus-ci-build/build/testrun/test_plan_...
--- /tmp/cirrus-ci-build/src/test/regress/expected/for_portion_of.out	2026-05-05 07:11:09.594871958 +0000
+++ /tmp/cirrus-ci-build/build/testrun/test_plan_advice/001_replan_regress/data/results/for_portion_of.out	2026-05-05 07...
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
OpenBSD - Meson
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/for_portion_of.out /home/postgres/postgres/build/testrun/pg_u...
--- /home/postgres/postgres/src/test/regress/expected/for_portion_of.out	Tue May  5 07:11:28 2026
+++ /home/postgres/postgres/build/testrun/pg_upgrade/002_pg_upgrade/data/results/for_portion_of.out	Tue May  5 07:14:54 ...
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/for_portion_of.out /home/postgres/postgres/build/testrun/reco...
--- /home/postgres/postgres/src/test/regress/expected/for_portion_of.out	Tue May  5 07:11:28 2026
+++ /home/postgres/postgres/build/testrun/recovery/027_stream_regress/data/results/for_portion_of.out	Tue May  5 07:17:1...
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/for_portion_of.out /home/postgres/postgres/build/testrun/regr...
--- /home/postgres/postgres/src/test/regress/expected/for_portion_of.out	Tue May  5 07:11:28 2026
+++ /home/postgres/postgres/build/testrun/regress/regress/results/for_portion_of.out	Tue May  5 07:14:47 2026
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/for_portion_of.out /home/postgres/postgres/build/testrun/test...
--- /home/postgres/postgres/src/test/regress/expected/for_portion_of.out	Tue May  5 07:11:28 2026
+++ /home/postgres/postgres/build/testrun/test_plan_advice/001_replan_regress/data/results/for_portion_of.out	Tue May  5...
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
Linux - Debian Trixie - Autoconf
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/for_portion_of.out /tmp/cirrus-ci-build/src/bin/pg_upgrade/tmp_c...
--- /tmp/cirrus-ci-build/src/test/regress/expected/for_portion_of.out	2026-05-05 07:12:03.251281978 +0000
+++ /tmp/cirrus-ci-build/src/bin/pg_upgrade/tmp_check/results/for_portion_of.out	2026-05-05 07:19:09.003976079 +0000
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/for_portion_of.out /tmp/cirrus-ci-build/src/test/modules/test_pl...
--- /tmp/cirrus-ci-build/src/test/regress/expected/for_portion_of.out	2026-05-05 07:12:03.251281978 +0000
+++ /tmp/cirrus-ci-build/src/test/modules/test_plan_advice/tmp_check/results/for_portion_of.out	2026-05-05 07:20:58.2588...
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/for_portion_of.out /tmp/cirrus-ci-build/src/test/recovery/tmp_ch...
--- /tmp/cirrus-ci-build/src/test/regress/expected/for_portion_of.out	2026-05-05 07:12:03.251281978 +0000
+++ /tmp/cirrus-ci-build/src/test/recovery/tmp_check/results/for_portion_of.out	2026-05-05 07:20:40.450907440 +0000
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/for_portion_of.out /tmp/cirrus-ci-build/src/test/regress/results...
--- /tmp/cirrus-ci-build/src/test/regress/expected/for_portion_of.out	2026-05-05 07:12:03.251281978 +0000
+++ /tmp/cirrus-ci-build/src/test/regress/results/for_portion_of.out	2026-05-05 07:16:50.062217867 +0000
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
FreeBSD - Meson
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/for_portion_of.out /tmp/cirrus-ci-build/build/testrun/pg_upgrade...
--- /tmp/cirrus-ci-build/src/test/regress/expected/for_portion_of.out	2026-05-05 07:11:03.195678000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_upgrade/data/results/for_portion_of.out	2026-05-05 07:13:14.356...
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/for_portion_of.out /tmp/cirrus-ci-build/build/testrun/recovery/0...
--- /tmp/cirrus-ci-build/src/test/regress/expected/for_portion_of.out	2026-05-05 07:11:03.195678000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_regress/data/results/for_portion_of.out	2026-05-05 07:14:37.3...
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/for_portion_of.out /tmp/cirrus-ci-build/build/testrun/regress/re...
--- /tmp/cirrus-ci-build/src/test/regress/expected/for_portion_of.out	2026-05-05 07:11:03.195678000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/regress/regress/results/for_portion_of.out	2026-05-05 07:13:15.914564000 +0000
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/for_portion_of.out /tmp/cirrus-ci-build/build/testrun/test_plan_...
--- /tmp/cirrus-ci-build/src/test/regress/expected/for_portion_of.out	2026-05-05 07:11:03.195678000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/test_plan_advice/001_replan_regress/data/results/for_portion_of.out	2026-05-05 07...
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
NetBSD - Meson
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/for_portion_of.out /home/postgres/postgres/build/testrun/pg_u...
--- /home/postgres/postgres/src/test/regress/expected/for_portion_of.out	2026-05-05 07:12:29.328544742 +0000
+++ /home/postgres/postgres/build/testrun/pg_upgrade/002_pg_upgrade/data/results/for_portion_of.out	2026-05-05 07:14:56....
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/for_portion_of.out /home/postgres/postgres/build/testrun/reco...
--- /home/postgres/postgres/src/test/regress/expected/for_portion_of.out	2026-05-05 07:12:29.328544742 +0000
+++ /home/postgres/postgres/build/testrun/recovery/027_stream_regress/data/results/for_portion_of.out	2026-05-05 07:15:4...
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/for_portion_of.out /home/postgres/postgres/build/testrun/regr...
--- /home/postgres/postgres/src/test/regress/expected/for_portion_of.out	2026-05-05 07:12:29.328544742 +0000
+++ /home/postgres/postgres/build/testrun/regress/regress/results/for_portion_of.out	2026-05-05 07:14:56.619044013 +0000
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/for_portion_of.out /home/postgres/postgres/build/testrun/test...
--- /home/postgres/postgres/src/test/regress/expected/for_portion_of.out	2026-05-05 07:12:29.328544742 +0000
+++ /home/postgres/postgres/build/testrun/test_plan_advice/001_replan_regress/data/results/for_portion_of.out	2026-05-05...
@@ -1099,8 +1099,6 @@
   FOR PORTION OF valid_at FROM '2000-01-01' TO '2001-01-11'
   SET name = 'one^3'
   WHERE id = 1;
-ERROR:  new row for relation "for_portion_of_test2" violates check constraint "fpo2_check"
-DETAIL:  Failing row contains (1, [2000-01-01,2001-01-11), one^3).
 ALTER TABLE for_portion_of_test2 DROP CONSTRAINT fpo2_check;
 -- test inserts violating CHECK constraints
 ALTER TABLE for_portion_of_test2
@@ -1115,12 +1113,13 @@
 SELECT * FROM for_portion_of_test2 WHERE id = 1 ORDER BY valid_at;
  id |        valid_at         | name  
 ----+-------------------------+-------
-  1 | [2000-01-01,2010-01-01) | one
+  1 | [2000-01-01,2001-01-11) | one^3
+  1 | [2001-01-11,2010-01-01) | one
   1 | [2010-01-01,2010-01-05) | one^1
...
59/6553 Decorrelate nested tuple hash tables
FreeBSD - Meson
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/union.out /tmp/cirrus-ci-build/build/testrun/recovery/027_stream...
--- /tmp/cirrus-ci-build/src/test/regress/expected/union.out	2026-05-04 11:33:35.379872000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_regress/data/results/union.out	2026-05-04 11:37:15.586826000 ...
@@ -550,9 +550,9 @@
 select x from (values (array[1, 2]), (array[1, 3])) _(x) union select x from (values (array[1, 2]), (array[1, 4])) _(x)...
    x   
 -------
+ {1,2}
  {1,4}
  {1,3}
- {1,2}
 (3 rows)
 
 explain (costs off)
59/5720 virtual generated column as partition key
Windows - Server 2022, VS 2019 - Meson & ninja
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/generated_virtual.out C:/cirrus/build/testrun/pg_upgrad...
--- C:/cirrus/src/test/regress/expected/generated_virtual.out	2026-05-03 07:41:03.831515400 +0000
+++ C:/cirrus/build/testrun/pg_upgrade/002_pg_upgrade/data/results/generated_virtual.out	2026-05-03 07:45:12.669426200 +...
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/generated_virtual.out C:/cirrus/build/testrun/recovery/...
--- C:/cirrus/src/test/regress/expected/generated_virtual.out	2026-05-03 07:41:03.831515400 +0000
+++ C:/cirrus/build/testrun/recovery/027_stream_regress/data/results/generated_virtual.out	2026-05-03 07:49:15.916023400...
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/generated_virtual.out C:/cirrus/build/testrun/regress/r...
--- C:/cirrus/src/test/regress/expected/generated_virtual.out	2026-05-03 07:41:03.831515400 +0000
+++ C:/cirrus/build/testrun/regress/regress/results/generated_virtual.out	2026-05-03 07:45:05.280775600 +0000
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/generated_virtual.out C:/cirrus/build/testrun/test_plan...
--- C:/cirrus/src/test/regress/expected/generated_virtual.out	2026-05-03 07:41:03.831515400 +0000
+++ C:/cirrus/build/testrun/test_plan_advice/001_replan_regress/data/results/generated_virtual.out	2026-05-03 07:45:08.1...
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
Linux - Debian Trixie - Meson
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/generated_virtual.out /tmp/cirrus-ci-build/build/testrun/pg_upgr...
--- /tmp/cirrus-ci-build/src/test/regress/expected/generated_virtual.out	2026-05-03 07:40:57.065096072 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_upgrade/data/results/generated_virtual.out	2026-05-03 07:45:38....
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/generated_virtual.out /tmp/cirrus-ci-build/build/testrun/recover...
--- /tmp/cirrus-ci-build/src/test/regress/expected/generated_virtual.out	2026-05-03 07:40:57.065096072 +0000
+++ /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_regress/data/results/generated_virtual.out	2026-05-03 07:47:1...
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/generated_virtual.out /tmp/cirrus-ci-build/build/testrun/regress...
--- /tmp/cirrus-ci-build/src/test/regress/expected/generated_virtual.out	2026-05-03 07:40:57.065096072 +0000
+++ /tmp/cirrus-ci-build/build/testrun/regress/regress/results/generated_virtual.out	2026-05-03 07:45:36.936387384 +0000
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/generated_virtual.out /tmp/cirrus-ci-build/build/testrun/test_pl...
--- /tmp/cirrus-ci-build/src/test/regress/expected/generated_virtual.out	2026-05-03 07:40:57.065096072 +0000
+++ /tmp/cirrus-ci-build/build/testrun/test_plan_advice/001_replan_regress/data/results/generated_virtual.out	2026-05-03...
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
macOS - Sequoia - Meson
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/generated_virtual.out /Users/admin/pgsql/build/testrun/pg_upgrade/...
--- /Users/admin/pgsql/src/test/regress/expected/generated_virtual.out	2026-05-03 07:41:02
+++ /Users/admin/pgsql/build/testrun/pg_upgrade/002_pg_upgrade/data/results/generated_virtual.out	2026-05-03 07:45:57
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/generated_virtual.out /Users/admin/pgsql/build/testrun/recovery/02...
--- /Users/admin/pgsql/src/test/regress/expected/generated_virtual.out	2026-05-03 07:41:02
+++ /Users/admin/pgsql/build/testrun/recovery/027_stream_regress/data/results/generated_virtual.out	2026-05-03 07:48:49
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/generated_virtual.out /Users/admin/pgsql/build/testrun/regress/reg...
--- /Users/admin/pgsql/src/test/regress/expected/generated_virtual.out	2026-05-03 07:41:02
+++ /Users/admin/pgsql/build/testrun/regress/regress/results/generated_virtual.out	2026-05-03 07:45:46
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/generated_virtual.out /Users/admin/pgsql/build/testrun/test_plan_a...
--- /Users/admin/pgsql/src/test/regress/expected/generated_virtual.out	2026-05-03 07:41:02
+++ /Users/admin/pgsql/build/testrun/test_plan_advice/001_replan_regress/data/results/generated_virtual.out	2026-05-03 0...
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
Linux - Debian Trixie - Autoconf
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/generated_virtual.out /tmp/cirrus-ci-build/src/bin/pg_upgrade/tm...
--- /tmp/cirrus-ci-build/src/test/regress/expected/generated_virtual.out	2026-05-03 07:40:57.063863157 +0000
+++ /tmp/cirrus-ci-build/src/bin/pg_upgrade/tmp_check/results/generated_virtual.out	2026-05-03 07:49:48.390548551 +0000
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/generated_virtual.out /tmp/cirrus-ci-build/src/test/modules/test...
--- /tmp/cirrus-ci-build/src/test/regress/expected/generated_virtual.out	2026-05-03 07:40:57.063863157 +0000
+++ /tmp/cirrus-ci-build/src/test/modules/test_plan_advice/tmp_check/results/generated_virtual.out	2026-05-03 07:52:13.1...
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/generated_virtual.out /tmp/cirrus-ci-build/src/test/recovery/tmp...
--- /tmp/cirrus-ci-build/src/test/regress/expected/generated_virtual.out	2026-05-03 07:40:57.063863157 +0000
+++ /tmp/cirrus-ci-build/src/test/recovery/tmp_check/results/generated_virtual.out	2026-05-03 07:51:54.406346782 +0000
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/generated_virtual.out /tmp/cirrus-ci-build/src/test/regress/resu...
--- /tmp/cirrus-ci-build/src/test/regress/expected/generated_virtual.out	2026-05-03 07:40:57.063863157 +0000
+++ /tmp/cirrus-ci-build/src/test/regress/results/generated_virtual.out	2026-05-03 07:46:59.157855013 +0000
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
OpenBSD - Meson
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/generated_virtual.out /home/postgres/postgres/build/testrun/p...
--- /home/postgres/postgres/src/test/regress/expected/generated_virtual.out	Sun May  3 07:41:12 2026
+++ /home/postgres/postgres/build/testrun/pg_upgrade/002_pg_upgrade/data/results/generated_virtual.out	Sun May  3 07:45:...
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/generated_virtual.out /home/postgres/postgres/build/testrun/r...
--- /home/postgres/postgres/src/test/regress/expected/generated_virtual.out	Sun May  3 07:41:12 2026
+++ /home/postgres/postgres/build/testrun/recovery/027_stream_regress/data/results/generated_virtual.out	Sun May  3 07:4...
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/generated_virtual.out /home/postgres/postgres/build/testrun/r...
--- /home/postgres/postgres/src/test/regress/expected/generated_virtual.out	Sun May  3 07:41:12 2026
+++ /home/postgres/postgres/build/testrun/regress/regress/results/generated_virtual.out	Sun May  3 07:45:19 2026
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/generated_virtual.out /home/postgres/postgres/build/testrun/t...
--- /home/postgres/postgres/src/test/regress/expected/generated_virtual.out	Sun May  3 07:41:12 2026
+++ /home/postgres/postgres/build/testrun/test_plan_advice/001_replan_regress/data/results/generated_virtual.out	Sun May...
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
NetBSD - Meson
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/generated_virtual.out /home/postgres/postgres/build/testrun/p...
--- /home/postgres/postgres/src/test/regress/expected/generated_virtual.out	2026-05-03 07:41:21.058498400 +0000
+++ /home/postgres/postgres/build/testrun/pg_upgrade/002_pg_upgrade/data/results/generated_virtual.out	2026-05-03 07:44:...
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/generated_virtual.out /home/postgres/postgres/build/testrun/r...
--- /home/postgres/postgres/src/test/regress/expected/generated_virtual.out	2026-05-03 07:41:21.058498400 +0000
+++ /home/postgres/postgres/build/testrun/recovery/027_stream_regress/data/results/generated_virtual.out	2026-05-03 07:4...
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/generated_virtual.out /home/postgres/postgres/build/testrun/r...
--- /home/postgres/postgres/src/test/regress/expected/generated_virtual.out	2026-05-03 07:41:21.058498400 +0000
+++ /home/postgres/postgres/build/testrun/regress/regress/results/generated_virtual.out	2026-05-03 07:44:23.666184256 +0...
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/generated_virtual.out /home/postgres/postgres/build/testrun/t...
--- /home/postgres/postgres/src/test/regress/expected/generated_virtual.out	2026-05-03 07:41:21.058498400 +0000
+++ /home/postgres/postgres/build/testrun/test_plan_advice/001_replan_regress/data/results/generated_virtual.out	2026-05...
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
FreeBSD - Meson
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/generated_virtual.out /tmp/cirrus-ci-build/build/testrun/pg_upgr...
--- /tmp/cirrus-ci-build/src/test/regress/expected/generated_virtual.out	2026-05-03 07:40:52.548813000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_upgrade/data/results/generated_virtual.out	2026-05-03 07:44:20....
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/generated_virtual.out /tmp/cirrus-ci-build/build/testrun/recover...
--- /tmp/cirrus-ci-build/src/test/regress/expected/generated_virtual.out	2026-05-03 07:40:52.548813000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_regress/data/results/generated_virtual.out	2026-05-03 07:45:5...
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/generated_virtual.out /tmp/cirrus-ci-build/build/testrun/regress...
--- /tmp/cirrus-ci-build/src/test/regress/expected/generated_virtual.out	2026-05-03 07:40:52.548813000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/regress/regress/results/generated_virtual.out	2026-05-03 07:44:31.513586000 +0000
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/generated_virtual.out /tmp/cirrus-ci-build/build/testrun/test_pl...
--- /tmp/cirrus-ci-build/src/test/regress/expected/generated_virtual.out	2026-05-03 07:40:52.548813000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/test_plan_advice/001_replan_regress/data/results/generated_virtual.out	2026-05-03...
@@ -1154,9 +1154,10 @@
  f2     | bigint |           |          |                              | plain   |              | 
  f3     | bigint |           |          | generated always as (f2 * 2) | plain   |              | 
 Partition key: RANGE (f3)
-Partitions: gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30'),
-            gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50'),
-            gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
+Partitions:
+    gtest_part_key1_0 FOR VALUES FROM ('20') TO ('30')
+    gtest_part_key1_1 FOR VALUES FROM ('30') TO ('50')
+    gtest_part_key1_2 FOR VALUES FROM ('50') TO ('100')
 
 INSERT INTO gtest_part_key1(f2) VALUES (9);     -- error
 ERROR:  no partition of relation "gtest_part_key1" found for row
59/6422 ANALYZE: hash-accelerate MCV tracking for equality-only types
NetBSD - Meson
regress
diff -U3 /home/postgres/postgres/src/test/isolation/expected/timeouts.out /home/postgres/postgres/build/testrun/isolatio...
--- /home/postgres/postgres/src/test/isolation/expected/timeouts.out	2026-05-03 07:09:13.281029504 +0000
+++ /home/postgres/postgres/build/testrun/isolation/isolation/results/timeouts.out	2026-05-03 07:11:49.174492534 +0000
@@ -11,7 +11,7 @@
 step sto: SET statement_timeout = '10ms';
 step locktbl: LOCK TABLE accounts; <waiting ...>
 step locktbl: <... completed>
-ERROR:  canceling statement due to statement timeout
+ERROR:  canceling statement due to user request
 
 starting permutation: rdtbl lto locktbl
 step rdtbl: SELECT * FROM accounts;
59/6643 New Table Access Methods for Multi and Single Inserts
macOS - Sequoia - Meson
regress
diff -U3 /Users/admin/pgsql/contrib/pg_stat_statements/expected/wal.out /Users/admin/pgsql/build/testrun/pg_stat_stateme...
--- /Users/admin/pgsql/contrib/pg_stat_statements/expected/wal.out	2026-04-28 17:20:14
+++ /Users/admin/pgsql/build/testrun/pg_stat_statements/regress/results/wal.out	2026-04-28 17:26:55
@@ -16,7 +16,7 @@
                             query                             | calls | rows | wal_bytes_generated | wal_records_genera...
 --------------------------------------------------------------+-------+------+---------------------+-------------------...
  DELETE FROM pgss_wal_tab WHERE a > $1                        |     1 |    1 | t                   | t                 ...
- INSERT INTO pgss_wal_tab VALUES(generate_series($1, $2), $3) |     1 |   10 | t                   | t                 ...
+ INSERT INTO pgss_wal_tab VALUES(generate_series($1, $2), $3) |     1 |   10 | t                   | t                 ...
  SELECT pg_stat_statements_reset() IS NOT NULL AS t           |     1 |    1 | f                   | f                 ...
  SET pg_stat_statements.track_utility = $1                    |     1 |    0 | f                   | f                 ...
  UPDATE pgss_wal_tab SET b = $1 WHERE a > $2                  |     1 |    3 | t                   | t                 ...
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/vacuum.out /Users/admin/pgsql/build/testrun/pg_upgrade/002_pg_upgr...
--- /Users/admin/pgsql/src/test/regress/expected/vacuum.out	2026-04-28 17:20:17
+++ /Users/admin/pgsql/build/testrun/pg_upgrade/002_pg_upgrade/data/results/vacuum.out	2026-04-28 17:24:42
@@ -231,7 +231,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
 SET vacuum_truncate = false;
@@ -251,7 +251,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
...
regress
diff -U3 /Users/admin/pgsql/contrib/pg_walinspect/expected/pg_walinspect.out /Users/admin/pgsql/build/testrun/pg_walinsp...
--- /Users/admin/pgsql/contrib/pg_walinspect/expected/pg_walinspect.out	2026-04-28 17:20:14
+++ /Users/admin/pgsql/build/testrun/pg_walinspect/regress/results/pg_walinspect.out	2026-04-28 17:26:56
@@ -98,7 +98,7 @@
 			WHERE block_ref LIKE concat('%', :'sample_tbl_oid', '%') AND resource_manager = 'Heap';
  ok 
 ----
- t
+ f
 (1 row)
 
 -- ===================================================================
@@ -109,7 +109,7 @@
 			WHERE resource_manager = 'Heap' AND record_type = 'INSERT';
  ok 
 ----
- t
+ f
 (1 row)
 
...
regress
diff -U3 /Users/admin/pgsql/contrib/postgres_fdw/expected/postgres_fdw.out /Users/admin/pgsql/build/testrun/postgres_fdw...
--- /Users/admin/pgsql/contrib/postgres_fdw/expected/postgres_fdw.out	2026-04-28 17:20:14
+++ /Users/admin/pgsql/build/testrun/postgres_fdw/regress/results/postgres_fdw.out	2026-04-28 17:27:01
@@ -3016,13 +3016,16 @@
 -- GROUP BY clause having expressions
 explain (verbose, costs off)
 select c2/2, sum(c2) * (c2/2) from ft1 group by c2/2 order by c2/2;
-                                                    QUERY PLAN                                                    
-------------------------------------------------------------------------------------------------------------------
- Foreign Scan
+                                      QUERY PLAN                                       
+---------------------------------------------------------------------------------------
+ Sort
    Output: ((c2 / 2)), ((sum(c2) * (c2 / 2)))
-   Relations: Aggregate on (public.ft1)
-   Remote SQL: SELECT (c2 / 2), (sum(c2) * (c2 / 2)) FROM "S 1"."T 1" GROUP BY 1 ORDER BY (c2 / 2) ASC NULLS LAST
-(4 rows)
+   Sort Key: ((ft1.c2 / 2))
+   ->  Foreign Scan
+         Output: ((c2 / 2)), ((sum(c2) * (c2 / 2)))
...
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/vacuum.out /Users/admin/pgsql/build/testrun/recovery/027_stream_re...
--- /Users/admin/pgsql/src/test/regress/expected/vacuum.out	2026-04-28 17:20:17
+++ /Users/admin/pgsql/build/testrun/recovery/027_stream_regress/data/results/vacuum.out	2026-04-28 17:26:03
@@ -231,7 +231,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
 SET vacuum_truncate = false;
@@ -251,7 +251,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
...
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/vacuum.out /Users/admin/pgsql/build/testrun/regress/regress/result...
--- /Users/admin/pgsql/src/test/regress/expected/vacuum.out	2026-04-28 17:20:17
+++ /Users/admin/pgsql/build/testrun/regress/regress/results/vacuum.out	2026-04-28 17:24:39
@@ -231,7 +231,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
 SET vacuum_truncate = false;
@@ -251,7 +251,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
...
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/vacuum.out /Users/admin/pgsql/build/testrun/test_plan_advice/001_r...
--- /Users/admin/pgsql/src/test/regress/expected/vacuum.out	2026-04-28 17:20:17
+++ /Users/admin/pgsql/build/testrun/test_plan_advice/001_replan_regress/data/results/vacuum.out	2026-04-28 17:24:41
@@ -231,7 +231,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
 SET vacuum_truncate = false;
@@ -251,7 +251,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
...
Windows - Server 2022, VS 2019 - Meson & ninja
regress
diff --strip-trailing-cr -U3 C:/cirrus/contrib/pg_stat_statements/expected/wal.out C:/cirrus/build/testrun/pg_stat_state...
--- C:/cirrus/contrib/pg_stat_statements/expected/wal.out	2026-04-28 17:20:15.442740200 +0000
+++ C:/cirrus/build/testrun/pg_stat_statements/regress/results/wal.out	2026-04-28 17:29:56.133181200 +0000
@@ -16,7 +16,7 @@
                             query                             | calls | rows | wal_bytes_generated | wal_records_genera...
 --------------------------------------------------------------+-------+------+---------------------+-------------------...
  DELETE FROM pgss_wal_tab WHERE a > $1                        |     1 |    1 | t                   | t                 ...
- INSERT INTO pgss_wal_tab VALUES(generate_series($1, $2), $3) |     1 |   10 | t                   | t                 ...
+ INSERT INTO pgss_wal_tab VALUES(generate_series($1, $2), $3) |     1 |   10 | t                   | t                 ...
  SELECT pg_stat_statements_reset() IS NOT NULL AS t           |     1 |    1 | f                   | f                 ...
  SET pg_stat_statements.track_utility = $1                    |     1 |    0 | f                   | f                 ...
  UPDATE pgss_wal_tab SET b = $1 WHERE a > $2                  |     1 |    3 | t                   | t                 ...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/copy.out C:/cirrus/build/testrun/pg_upgrade/002_pg_upgr...
--- C:/cirrus/src/test/regress/expected/copy.out	2026-04-28 17:20:20.144378900 +0000
+++ C:/cirrus/build/testrun/pg_upgrade/002_pg_upgrade/data/results/copy.out	2026-04-28 17:23:11.635005800 +0000
@@ -624,24 +624,28 @@
 INSERT INTO copy_bulk_src SELECT g, 'row-' || g FROM generate_series(1, 2500) g;
 CREATE TABLE copy_bulk_dst (a int, b text);
 COPY copy_bulk_src TO '/tmp/copy_buffered_bulk_test.csv' CSV;
+ERROR:  could not open file "/tmp/copy_buffered_bulk_test.csv" for writing: No such file or directory
+HINT:  COPY TO instructs the PostgreSQL server process to write a file. You may want a client-side facility such as psq...
 COPY copy_bulk_dst FROM '/tmp/copy_buffered_bulk_test.csv' CSV;
+ERROR:  could not open file "/tmp/copy_buffered_bulk_test.csv" for reading: No such file or directory
+HINT:  COPY FROM instructs the PostgreSQL server process to read a file. You may want a client-side facility such as ps...
 SELECT count(*) FROM copy_bulk_dst;
  count 
 -------
-  2500
+     0
 (1 row)
 
 SELECT min(a), max(a) FROM copy_bulk_dst;
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/contrib/pg_walinspect/expected/pg_walinspect.out C:/cirrus/build/testrun/pg_walin...
--- C:/cirrus/contrib/pg_walinspect/expected/pg_walinspect.out	2026-04-28 17:20:15.520080600 +0000
+++ C:/cirrus/build/testrun/pg_walinspect/regress/results/pg_walinspect.out	2026-04-28 17:29:57.337775400 +0000
@@ -98,7 +98,7 @@
 			WHERE block_ref LIKE concat('%', :'sample_tbl_oid', '%') AND resource_manager = 'Heap';
  ok 
 ----
- t
+ f
 (1 row)
 
 -- ===================================================================
@@ -109,7 +109,7 @@
 			WHERE resource_manager = 'Heap' AND record_type = 'INSERT';
  ok 
 ----
- t
+ f
 (1 row)
 
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/contrib/postgres_fdw/expected/postgres_fdw.out C:/cirrus/build/testrun/postgres_f...
--- C:/cirrus/contrib/postgres_fdw/expected/postgres_fdw.out	2026-04-28 17:20:15.630553400 +0000
+++ C:/cirrus/build/testrun/postgres_fdw/regress/results/postgres_fdw.out	2026-04-28 17:30:10.046740500 +0000
@@ -3016,13 +3016,16 @@
 -- GROUP BY clause having expressions
 explain (verbose, costs off)
 select c2/2, sum(c2) * (c2/2) from ft1 group by c2/2 order by c2/2;
-                                                    QUERY PLAN                                                    
-------------------------------------------------------------------------------------------------------------------
- Foreign Scan
+                                      QUERY PLAN                                       
+---------------------------------------------------------------------------------------
+ Sort
    Output: ((c2 / 2)), ((sum(c2) * (c2 / 2)))
-   Relations: Aggregate on (public.ft1)
-   Remote SQL: SELECT (c2 / 2), (sum(c2) * (c2 / 2)) FROM "S 1"."T 1" GROUP BY 1 ORDER BY (c2 / 2) ASC NULLS LAST
-(4 rows)
+   Sort Key: ((ft1.c2 / 2))
+   ->  Foreign Scan
+         Output: ((c2 / 2)), ((sum(c2) * (c2 / 2)))
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/copy.out C:/cirrus/build/testrun/recovery/027_stream_re...
--- C:/cirrus/src/test/regress/expected/copy.out	2026-04-28 17:20:20.144378900 +0000
+++ C:/cirrus/build/testrun/recovery/027_stream_regress/data/results/copy.out	2026-04-28 17:27:09.560575000 +0000
@@ -624,24 +624,28 @@
 INSERT INTO copy_bulk_src SELECT g, 'row-' || g FROM generate_series(1, 2500) g;
 CREATE TABLE copy_bulk_dst (a int, b text);
 COPY copy_bulk_src TO '/tmp/copy_buffered_bulk_test.csv' CSV;
+ERROR:  could not open file "/tmp/copy_buffered_bulk_test.csv" for writing: No such file or directory
+HINT:  COPY TO instructs the PostgreSQL server process to write a file. You may want a client-side facility such as psq...
 COPY copy_bulk_dst FROM '/tmp/copy_buffered_bulk_test.csv' CSV;
+ERROR:  could not open file "/tmp/copy_buffered_bulk_test.csv" for reading: No such file or directory
+HINT:  COPY FROM instructs the PostgreSQL server process to read a file. You may want a client-side facility such as ps...
 SELECT count(*) FROM copy_bulk_dst;
  count 
 -------
-  2500
+     0
 (1 row)
 
 SELECT min(a), max(a) FROM copy_bulk_dst;
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/copy.out C:/cirrus/build/testrun/regress/regress/result...
--- C:/cirrus/src/test/regress/expected/copy.out	2026-04-28 17:20:20.144378900 +0000
+++ C:/cirrus/build/testrun/regress/regress/results/copy.out	2026-04-28 17:23:07.538810800 +0000
@@ -624,24 +624,28 @@
 INSERT INTO copy_bulk_src SELECT g, 'row-' || g FROM generate_series(1, 2500) g;
 CREATE TABLE copy_bulk_dst (a int, b text);
 COPY copy_bulk_src TO '/tmp/copy_buffered_bulk_test.csv' CSV;
+ERROR:  could not open file "/tmp/copy_buffered_bulk_test.csv" for writing: No such file or directory
+HINT:  COPY TO instructs the PostgreSQL server process to write a file. You may want a client-side facility such as psq...
 COPY copy_bulk_dst FROM '/tmp/copy_buffered_bulk_test.csv' CSV;
+ERROR:  could not open file "/tmp/copy_buffered_bulk_test.csv" for reading: No such file or directory
+HINT:  COPY FROM instructs the PostgreSQL server process to read a file. You may want a client-side facility such as ps...
 SELECT count(*) FROM copy_bulk_dst;
  count 
 -------
-  2500
+     0
 (1 row)
 
 SELECT min(a), max(a) FROM copy_bulk_dst;
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/copy.out C:/cirrus/build/testrun/test_plan_advice/001_r...
--- C:/cirrus/src/test/regress/expected/copy.out	2026-04-28 17:20:20.144378900 +0000
+++ C:/cirrus/build/testrun/test_plan_advice/001_replan_regress/data/results/copy.out	2026-04-28 17:23:10.525629600 +000...
@@ -624,24 +624,28 @@
 INSERT INTO copy_bulk_src SELECT g, 'row-' || g FROM generate_series(1, 2500) g;
 CREATE TABLE copy_bulk_dst (a int, b text);
 COPY copy_bulk_src TO '/tmp/copy_buffered_bulk_test.csv' CSV;
+ERROR:  could not open file "/tmp/copy_buffered_bulk_test.csv" for writing: No such file or directory
+HINT:  COPY TO instructs the PostgreSQL server process to write a file. You may want a client-side facility such as psq...
 COPY copy_bulk_dst FROM '/tmp/copy_buffered_bulk_test.csv' CSV;
+ERROR:  could not open file "/tmp/copy_buffered_bulk_test.csv" for reading: No such file or directory
+HINT:  COPY FROM instructs the PostgreSQL server process to read a file. You may want a client-side facility such as ps...
 SELECT count(*) FROM copy_bulk_dst;
  count 
 -------
-  2500
+     0
 (1 row)
 
 SELECT min(a), max(a) FROM copy_bulk_dst;
...
Linux - Debian Trixie - Meson
regress
diff -U3 /tmp/cirrus-ci-build/contrib/pg_stat_statements/expected/wal.out /tmp/cirrus-ci-build/build/testrun/pg_stat_sta...
--- /tmp/cirrus-ci-build/contrib/pg_stat_statements/expected/wal.out	2026-04-28 17:20:08.558306780 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_stat_statements/regress/results/wal.out	2026-04-28 17:28:14.005169841 +0000
@@ -16,7 +16,7 @@
                             query                             | calls | rows | wal_bytes_generated | wal_records_genera...
 --------------------------------------------------------------+-------+------+---------------------+-------------------...
  DELETE FROM pgss_wal_tab WHERE a > $1                        |     1 |    1 | t                   | t                 ...
- INSERT INTO pgss_wal_tab VALUES(generate_series($1, $2), $3) |     1 |   10 | t                   | t                 ...
+ INSERT INTO pgss_wal_tab VALUES(generate_series($1, $2), $3) |     1 |   10 | t                   | t                 ...
  SELECT pg_stat_statements_reset() IS NOT NULL AS t           |     1 |    1 | f                   | f                 ...
  SET pg_stat_statements.track_utility = $1                    |     1 |    0 | f                   | f                 ...
  UPDATE pgss_wal_tab SET b = $1 WHERE a > $2                  |     1 |    3 | t                   | t                 ...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/vacuum.out /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_...
--- /tmp/cirrus-ci-build/src/test/regress/expected/vacuum.out	2026-04-28 17:20:10.562306822 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_upgrade/data/results/vacuum.out	2026-04-28 17:24:39.557324834 +...
@@ -231,7 +231,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
 SET vacuum_truncate = false;
@@ -251,7 +251,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
...
regress
diff -U3 /tmp/cirrus-ci-build/contrib/pg_walinspect/expected/pg_walinspect.out /tmp/cirrus-ci-build/build/testrun/pg_wal...
--- /tmp/cirrus-ci-build/contrib/pg_walinspect/expected/pg_walinspect.out	2026-04-28 17:20:08.570306780 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_walinspect/regress/results/pg_walinspect.out	2026-04-28 17:28:17.589165242 +00...
@@ -98,7 +98,7 @@
 			WHERE block_ref LIKE concat('%', :'sample_tbl_oid', '%') AND resource_manager = 'Heap';
  ok 
 ----
- t
+ f
 (1 row)
 
 -- ===================================================================
@@ -109,7 +109,7 @@
 			WHERE resource_manager = 'Heap' AND record_type = 'INSERT';
  ok 
 ----
- t
+ f
 (1 row)
 
...
regress
diff -U3 /tmp/cirrus-ci-build/contrib/postgres_fdw/expected/postgres_fdw.out /tmp/cirrus-ci-build/build/testrun/postgres...
--- /tmp/cirrus-ci-build/contrib/postgres_fdw/expected/postgres_fdw.out	2026-04-28 17:20:08.598306780 +0000
+++ /tmp/cirrus-ci-build/build/testrun/postgres_fdw/regress/results/postgres_fdw.out	2026-04-28 17:28:38.373140297 +0000
@@ -3016,13 +3016,16 @@
 -- GROUP BY clause having expressions
 explain (verbose, costs off)
 select c2/2, sum(c2) * (c2/2) from ft1 group by c2/2 order by c2/2;
-                                                    QUERY PLAN                                                    
-------------------------------------------------------------------------------------------------------------------
- Foreign Scan
+                                      QUERY PLAN                                       
+---------------------------------------------------------------------------------------
+ Sort
    Output: ((c2 / 2)), ((sum(c2) * (c2 / 2)))
-   Relations: Aggregate on (public.ft1)
-   Remote SQL: SELECT (c2 / 2), (sum(c2) * (c2 / 2)) FROM "S 1"."T 1" GROUP BY 1 ORDER BY (c2 / 2) ASC NULLS LAST
-(4 rows)
+   Sort Key: ((ft1.c2 / 2))
+   ->  Foreign Scan
+         Output: ((c2 / 2)), ((sum(c2) * (c2 / 2)))
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/vacuum.out /tmp/cirrus-ci-build/build/testrun/recovery/027_strea...
--- /tmp/cirrus-ci-build/src/test/regress/expected/vacuum.out	2026-04-28 17:20:10.562306822 +0000
+++ /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_regress/data/results/vacuum.out	2026-04-28 17:26:59.645216146...
@@ -231,7 +231,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
 SET vacuum_truncate = false;
@@ -251,7 +251,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/vacuum.out /tmp/cirrus-ci-build/build/testrun/regress/regress/re...
--- /tmp/cirrus-ci-build/src/test/regress/expected/vacuum.out	2026-04-28 17:20:10.562306822 +0000
+++ /tmp/cirrus-ci-build/build/testrun/regress/regress/results/vacuum.out	2026-04-28 17:24:41.253322163 +0000
@@ -231,7 +231,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
 SET vacuum_truncate = false;
@@ -251,7 +251,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/vacuum.out /tmp/cirrus-ci-build/build/testrun/test_plan_advice/0...
--- /tmp/cirrus-ci-build/src/test/regress/expected/vacuum.out	2026-04-28 17:20:10.562306822 +0000
+++ /tmp/cirrus-ci-build/build/testrun/test_plan_advice/001_replan_regress/data/results/vacuum.out	2026-04-28 17:24:43.4...
@@ -231,7 +231,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
 SET vacuum_truncate = false;
@@ -251,7 +251,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
...
Linux - Debian Trixie - Autoconf
regress
diff -U3 /tmp/cirrus-ci-build/contrib/pg_stat_statements/expected/wal.out /tmp/cirrus-ci-build/contrib/pg_stat_statement...
--- /tmp/cirrus-ci-build/contrib/pg_stat_statements/expected/wal.out	2026-04-28 17:20:36.687516834 +0000
+++ /tmp/cirrus-ci-build/contrib/pg_stat_statements/results/wal.out	2026-04-28 17:27:07.747114783 +0000
@@ -16,7 +16,7 @@
                             query                             | calls | rows | wal_bytes_generated | wal_records_genera...
 --------------------------------------------------------------+-------+------+---------------------+-------------------...
  DELETE FROM pgss_wal_tab WHERE a > $1                        |     1 |    1 | t                   | t                 ...
- INSERT INTO pgss_wal_tab VALUES(generate_series($1, $2), $3) |     1 |   10 | t                   | t                 ...
+ INSERT INTO pgss_wal_tab VALUES(generate_series($1, $2), $3) |     1 |   10 | t                   | t                 ...
  SELECT pg_stat_statements_reset() IS NOT NULL AS t           |     1 |    1 | f                   | f                 ...
  SET pg_stat_statements.track_utility = $1                    |     1 |    0 | f                   | f                 ...
  UPDATE pgss_wal_tab SET b = $1 WHERE a > $2                  |     1 |    3 | t                   | t                 ...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/vacuum.out /tmp/cirrus-ci-build/src/bin/pg_upgrade/tmp_check/res...
--- /tmp/cirrus-ci-build/src/test/regress/expected/vacuum.out	2026-04-28 17:20:38.527514763 +0000
+++ /tmp/cirrus-ci-build/src/bin/pg_upgrade/tmp_check/results/vacuum.out	2026-04-28 17:27:30.907096792 +0000
@@ -231,7 +231,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
 SET vacuum_truncate = false;
@@ -251,7 +251,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/vacuum.out /tmp/cirrus-ci-build/src/test/modules/test_plan_advic...
--- /tmp/cirrus-ci-build/src/test/regress/expected/vacuum.out	2026-04-28 17:20:38.527514763 +0000
+++ /tmp/cirrus-ci-build/src/test/modules/test_plan_advice/tmp_check/results/vacuum.out	2026-04-28 17:29:34.459015702 +0...
@@ -231,7 +231,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
 SET vacuum_truncate = false;
@@ -251,7 +251,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/vacuum.out /tmp/cirrus-ci-build/src/test/recovery/tmp_check/resu...
--- /tmp/cirrus-ci-build/src/test/regress/expected/vacuum.out	2026-04-28 17:20:38.527514763 +0000
+++ /tmp/cirrus-ci-build/src/test/recovery/tmp_check/results/vacuum.out	2026-04-28 17:29:37.199014095 +0000
@@ -231,7 +231,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
 SET vacuum_truncate = false;
@@ -251,7 +251,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/vacuum.out /tmp/cirrus-ci-build/src/test/regress/results/vacuum....
--- /tmp/cirrus-ci-build/src/test/regress/expected/vacuum.out	2026-04-28 17:20:38.527514763 +0000
+++ /tmp/cirrus-ci-build/src/test/regress/results/vacuum.out	2026-04-28 17:25:23.835216253 +0000
@@ -231,7 +231,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
 SET vacuum_truncate = false;
@@ -251,7 +251,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
...
OpenBSD - Meson
regress
diff -U3 /home/postgres/postgres/contrib/pg_stat_statements/expected/wal.out /home/postgres/postgres/build/testrun/pg_st...
--- /home/postgres/postgres/contrib/pg_stat_statements/expected/wal.out	Tue Apr 28 17:21:01 2026
+++ /home/postgres/postgres/build/testrun/pg_stat_statements/regress/results/wal.out	Tue Apr 28 17:27:05 2026
@@ -16,7 +16,7 @@
                             query                             | calls | rows | wal_bytes_generated | wal_records_genera...
 --------------------------------------------------------------+-------+------+---------------------+-------------------...
  DELETE FROM pgss_wal_tab WHERE a > $1                        |     1 |    1 | t                   | t                 ...
- INSERT INTO pgss_wal_tab VALUES(generate_series($1, $2), $3) |     1 |   10 | t                   | t                 ...
+ INSERT INTO pgss_wal_tab VALUES(generate_series($1, $2), $3) |     1 |   10 | t                   | t                 ...
  SELECT pg_stat_statements_reset() IS NOT NULL AS t           |     1 |    1 | f                   | f                 ...
  SET pg_stat_statements.track_utility = $1                    |     1 |    0 | f                   | f                 ...
  UPDATE pgss_wal_tab SET b = $1 WHERE a > $2                  |     1 |    3 | t                   | t                 ...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/vacuum.out /home/postgres/postgres/build/testrun/pg_upgrade/0...
--- /home/postgres/postgres/src/test/regress/expected/vacuum.out	Tue Apr 28 17:21:11 2026
+++ /home/postgres/postgres/build/testrun/pg_upgrade/002_pg_upgrade/data/results/vacuum.out	Tue Apr 28 17:24:10 2026
@@ -231,7 +231,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
 SET vacuum_truncate = false;
@@ -251,7 +251,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
...
regress
diff -U3 /home/postgres/postgres/contrib/pg_walinspect/expected/pg_walinspect.out /home/postgres/postgres/build/testrun/...
--- /home/postgres/postgres/contrib/pg_walinspect/expected/pg_walinspect.out	Tue Apr 28 17:21:02 2026
+++ /home/postgres/postgres/build/testrun/pg_walinspect/regress/results/pg_walinspect.out	Tue Apr 28 17:27:06 2026
@@ -98,7 +98,7 @@
 			WHERE block_ref LIKE concat('%', :'sample_tbl_oid', '%') AND resource_manager = 'Heap';
  ok 
 ----
- t
+ f
 (1 row)
 
 -- ===================================================================
@@ -109,7 +109,7 @@
 			WHERE resource_manager = 'Heap' AND record_type = 'INSERT';
  ok 
 ----
- t
+ f
 (1 row)
 
...
regress
diff -U3 /home/postgres/postgres/contrib/postgres_fdw/expected/postgres_fdw.out /home/postgres/postgres/build/testrun/po...
--- /home/postgres/postgres/contrib/postgres_fdw/expected/postgres_fdw.out	Tue Apr 28 17:21:02 2026
+++ /home/postgres/postgres/build/testrun/postgres_fdw/regress/results/postgres_fdw.out	Tue Apr 28 17:27:25 2026
@@ -3016,13 +3016,16 @@
 -- GROUP BY clause having expressions
 explain (verbose, costs off)
 select c2/2, sum(c2) * (c2/2) from ft1 group by c2/2 order by c2/2;
-                                                    QUERY PLAN                                                    
-------------------------------------------------------------------------------------------------------------------
- Foreign Scan
+                                      QUERY PLAN                                       
+---------------------------------------------------------------------------------------
+ Sort
    Output: ((c2 / 2)), ((sum(c2) * (c2 / 2)))
-   Relations: Aggregate on (public.ft1)
-   Remote SQL: SELECT (c2 / 2), (sum(c2) * (c2 / 2)) FROM "S 1"."T 1" GROUP BY 1 ORDER BY (c2 / 2) ASC NULLS LAST
-(4 rows)
+   Sort Key: ((ft1.c2 / 2))
+   ->  Foreign Scan
+         Output: ((c2 / 2)), ((sum(c2) * (c2 / 2)))
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/vacuum.out /home/postgres/postgres/build/testrun/recovery/027...
--- /home/postgres/postgres/src/test/regress/expected/vacuum.out	Tue Apr 28 17:21:11 2026
+++ /home/postgres/postgres/build/testrun/recovery/027_stream_regress/data/results/vacuum.out	Tue Apr 28 17:26:09 2026
@@ -231,7 +231,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
 SET vacuum_truncate = false;
@@ -251,7 +251,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/vacuum.out /home/postgres/postgres/build/testrun/regress/regr...
--- /home/postgres/postgres/src/test/regress/expected/vacuum.out	Tue Apr 28 17:21:11 2026
+++ /home/postgres/postgres/build/testrun/regress/regress/results/vacuum.out	Tue Apr 28 17:24:05 2026
@@ -231,7 +231,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
 SET vacuum_truncate = false;
@@ -251,7 +251,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/vacuum.out /home/postgres/postgres/build/testrun/test_plan_ad...
--- /home/postgres/postgres/src/test/regress/expected/vacuum.out	Tue Apr 28 17:21:11 2026
+++ /home/postgres/postgres/build/testrun/test_plan_advice/001_replan_regress/data/results/vacuum.out	Tue Apr 28 17:24:1...
@@ -231,7 +231,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
 SET vacuum_truncate = false;
@@ -251,7 +251,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
...
NetBSD - Meson
regress
diff -U3 /home/postgres/postgres/contrib/pg_stat_statements/expected/wal.out /home/postgres/postgres/build/testrun/pg_st...
--- /home/postgres/postgres/contrib/pg_stat_statements/expected/wal.out	2026-04-28 17:20:57.785658987 +0000
+++ /home/postgres/postgres/build/testrun/pg_stat_statements/regress/results/wal.out	2026-04-28 17:24:46.940200163 +0000
@@ -16,7 +16,7 @@
                             query                             | calls | rows | wal_bytes_generated | wal_records_genera...
 --------------------------------------------------------------+-------+------+---------------------+-------------------...
  DELETE FROM pgss_wal_tab WHERE a > $1                        |     1 |    1 | t                   | t                 ...
- INSERT INTO pgss_wal_tab VALUES(generate_series($1, $2), $3) |     1 |   10 | t                   | t                 ...
+ INSERT INTO pgss_wal_tab VALUES(generate_series($1, $2), $3) |     1 |   10 | t                   | t                 ...
  SELECT pg_stat_statements_reset() IS NOT NULL AS t           |     1 |    1 | f                   | f                 ...
  SET pg_stat_statements.track_utility = $1                    |     1 |    0 | f                   | f                 ...
  UPDATE pgss_wal_tab SET b = $1 WHERE a > $2                  |     1 |    3 | t                   | t                 ...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/vacuum.out /home/postgres/postgres/build/testrun/pg_upgrade/0...
--- /home/postgres/postgres/src/test/regress/expected/vacuum.out	2026-04-28 17:21:06.892003247 +0000
+++ /home/postgres/postgres/build/testrun/pg_upgrade/002_pg_upgrade/data/results/vacuum.out	2026-04-28 17:23:24.14153601...
@@ -231,7 +231,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
 SET vacuum_truncate = false;
@@ -251,7 +251,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
...
regress
diff -U3 /home/postgres/postgres/contrib/pg_walinspect/expected/pg_walinspect.out /home/postgres/postgres/build/testrun/...
--- /home/postgres/postgres/contrib/pg_walinspect/expected/pg_walinspect.out	2026-04-28 17:20:57.912968021 +0000
+++ /home/postgres/postgres/build/testrun/pg_walinspect/regress/results/pg_walinspect.out	2026-04-28 17:24:47.874833874 ...
@@ -98,7 +98,7 @@
 			WHERE block_ref LIKE concat('%', :'sample_tbl_oid', '%') AND resource_manager = 'Heap';
  ok 
 ----
- t
+ f
 (1 row)
 
 -- ===================================================================
@@ -109,7 +109,7 @@
 			WHERE resource_manager = 'Heap' AND record_type = 'INSERT';
  ok 
 ----
- t
+ f
 (1 row)
 
...
regress
diff -U3 /home/postgres/postgres/contrib/postgres_fdw/expected/postgres_fdw.out /home/postgres/postgres/build/testrun/po...
--- /home/postgres/postgres/contrib/postgres_fdw/expected/postgres_fdw.out	2026-04-28 17:20:58.107453422 +0000
+++ /home/postgres/postgres/build/testrun/postgres_fdw/regress/results/postgres_fdw.out	2026-04-28 17:24:55.037253251 +0...
@@ -3016,13 +3016,16 @@
 -- GROUP BY clause having expressions
 explain (verbose, costs off)
 select c2/2, sum(c2) * (c2/2) from ft1 group by c2/2 order by c2/2;
-                                                    QUERY PLAN                                                    
-------------------------------------------------------------------------------------------------------------------
- Foreign Scan
+                                      QUERY PLAN                                       
+---------------------------------------------------------------------------------------
+ Sort
    Output: ((c2 / 2)), ((sum(c2) * (c2 / 2)))
-   Relations: Aggregate on (public.ft1)
-   Remote SQL: SELECT (c2 / 2), (sum(c2) * (c2 / 2)) FROM "S 1"."T 1" GROUP BY 1 ORDER BY (c2 / 2) ASC NULLS LAST
-(4 rows)
+   Sort Key: ((ft1.c2 / 2))
+   ->  Foreign Scan
+         Output: ((c2 / 2)), ((sum(c2) * (c2 / 2)))
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/vacuum.out /home/postgres/postgres/build/testrun/recovery/027...
--- /home/postgres/postgres/src/test/regress/expected/vacuum.out	2026-04-28 17:21:06.892003247 +0000
+++ /home/postgres/postgres/build/testrun/recovery/027_stream_regress/data/results/vacuum.out	2026-04-28 17:24:01.489371...
@@ -231,7 +231,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
 SET vacuum_truncate = false;
@@ -251,7 +251,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/vacuum.out /home/postgres/postgres/build/testrun/regress/regr...
--- /home/postgres/postgres/src/test/regress/expected/vacuum.out	2026-04-28 17:21:06.892003247 +0000
+++ /home/postgres/postgres/build/testrun/regress/regress/results/vacuum.out	2026-04-28 17:23:20.053496839 +0000
@@ -231,7 +231,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
 SET vacuum_truncate = false;
@@ -251,7 +251,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/vacuum.out /home/postgres/postgres/build/testrun/test_plan_ad...
--- /home/postgres/postgres/src/test/regress/expected/vacuum.out	2026-04-28 17:21:06.892003247 +0000
+++ /home/postgres/postgres/build/testrun/test_plan_advice/001_replan_regress/data/results/vacuum.out	2026-04-28 17:23:2...
@@ -231,7 +231,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
 SET vacuum_truncate = false;
@@ -251,7 +251,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
...
FreeBSD - Meson
regress
diff -U3 /tmp/cirrus-ci-build/contrib/pg_stat_statements/expected/wal.out /tmp/cirrus-ci-build/build/testrun/pg_stat_sta...
--- /tmp/cirrus-ci-build/contrib/pg_stat_statements/expected/wal.out	2026-04-28 17:21:09.856737000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_stat_statements/regress/results/wal.out	2026-04-28 17:25:44.618194000 +0000
@@ -16,7 +16,7 @@
                             query                             | calls | rows | wal_bytes_generated | wal_records_genera...
 --------------------------------------------------------------+-------+------+---------------------+-------------------...
  DELETE FROM pgss_wal_tab WHERE a > $1                        |     1 |    1 | t                   | t                 ...
- INSERT INTO pgss_wal_tab VALUES(generate_series($1, $2), $3) |     1 |   10 | t                   | t                 ...
+ INSERT INTO pgss_wal_tab VALUES(generate_series($1, $2), $3) |     1 |   10 | t                   | t                 ...
  SELECT pg_stat_statements_reset() IS NOT NULL AS t           |     1 |    1 | f                   | f                 ...
  SET pg_stat_statements.track_utility = $1                    |     1 |    0 | f                   | f                 ...
  UPDATE pgss_wal_tab SET b = $1 WHERE a > $2                  |     1 |    3 | t                   | t                 ...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/vacuum.out /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_...
--- /tmp/cirrus-ci-build/src/test/regress/expected/vacuum.out	2026-04-28 17:21:11.534108000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_upgrade/data/results/vacuum.out	2026-04-28 17:23:26.099721000 +...
@@ -231,7 +231,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
 SET vacuum_truncate = false;
@@ -251,7 +251,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
...
regress
diff -U3 /tmp/cirrus-ci-build/contrib/pg_walinspect/expected/pg_walinspect.out /tmp/cirrus-ci-build/build/testrun/pg_wal...
--- /tmp/cirrus-ci-build/contrib/pg_walinspect/expected/pg_walinspect.out	2026-04-28 17:21:09.868222000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_walinspect/regress/results/pg_walinspect.out	2026-04-28 17:25:44.524403000 +00...
@@ -98,7 +98,7 @@
 			WHERE block_ref LIKE concat('%', :'sample_tbl_oid', '%') AND resource_manager = 'Heap';
  ok 
 ----
- t
+ f
 (1 row)
 
 -- ===================================================================
@@ -109,7 +109,7 @@
 			WHERE resource_manager = 'Heap' AND record_type = 'INSERT';
  ok 
 ----
- t
+ f
 (1 row)
 
...
regress
diff -U3 /tmp/cirrus-ci-build/contrib/postgres_fdw/expected/postgres_fdw.out /tmp/cirrus-ci-build/build/testrun/postgres...
--- /tmp/cirrus-ci-build/contrib/postgres_fdw/expected/postgres_fdw.out	2026-04-28 17:21:09.892402000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/postgres_fdw/regress/results/postgres_fdw.out	2026-04-28 17:26:35.261726000 +0000
@@ -3016,13 +3016,16 @@
 -- GROUP BY clause having expressions
 explain (verbose, costs off)
 select c2/2, sum(c2) * (c2/2) from ft1 group by c2/2 order by c2/2;
-                                                    QUERY PLAN                                                    
-------------------------------------------------------------------------------------------------------------------
- Foreign Scan
+                                      QUERY PLAN                                       
+---------------------------------------------------------------------------------------
+ Sort
    Output: ((c2 / 2)), ((sum(c2) * (c2 / 2)))
-   Relations: Aggregate on (public.ft1)
-   Remote SQL: SELECT (c2 / 2), (sum(c2) * (c2 / 2)) FROM "S 1"."T 1" GROUP BY 1 ORDER BY (c2 / 2) ASC NULLS LAST
-(4 rows)
+   Sort Key: ((ft1.c2 / 2))
+   ->  Foreign Scan
+         Output: ((c2 / 2)), ((sum(c2) * (c2 / 2)))
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/vacuum.out /tmp/cirrus-ci-build/build/testrun/recovery/027_strea...
--- /tmp/cirrus-ci-build/src/test/regress/expected/vacuum.out	2026-04-28 17:21:11.534108000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_regress/data/results/vacuum.out	2026-04-28 17:24:52.663917000...
@@ -231,7 +231,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
 SET vacuum_truncate = false;
@@ -251,7 +251,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/vacuum.out /tmp/cirrus-ci-build/build/testrun/regress/regress/re...
--- /tmp/cirrus-ci-build/src/test/regress/expected/vacuum.out	2026-04-28 17:21:11.534108000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/regress/regress/results/vacuum.out	2026-04-28 17:23:21.767095000 +0000
@@ -231,7 +231,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
 SET vacuum_truncate = false;
@@ -251,7 +251,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/vacuum.out /tmp/cirrus-ci-build/build/testrun/test_plan_advice/0...
--- /tmp/cirrus-ci-build/src/test/regress/expected/vacuum.out	2026-04-28 17:21:11.534108000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/test_plan_advice/001_replan_regress/data/results/vacuum.out	2026-04-28 17:23:29.2...
@@ -231,7 +231,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
 SET vacuum_truncate = false;
@@ -251,7 +251,7 @@
 SELECT pg_relation_size('vac_truncate_test') > 0;
  ?column? 
 ----------
- t
+ f
 (1 row)
 
...