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.

58/6389 Flush some statistics within running transactions
Linux - Debian Trixie - Meson
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/stats.out /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_u...
--- /tmp/cirrus-ci-build/src/test/regress/expected/stats.out	2026-01-23 02:28:03.209428436 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_upgrade/data/results/stats.out	2026-01-23 02:32:42.424326649 +0...
@@ -660,9 +660,9 @@
 (1 row)
 
 SELECT last_seq_scan, last_idx_scan FROM pg_stat_all_tables WHERE relid = 'test_last_scan'::regclass;
- last_seq_scan | last_idx_scan 
----------------+---------------
-               | 
+            last_seq_scan            | last_idx_scan 
+-------------------------------------+---------------
+ Thu Jan 22 18:32:40.097691 2026 PST | 
 (1 row)
 
 COMMIT;
OpenBSD - Meson
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/stats.out /home/postgres/postgres/build/testrun/pg_upgrade/00...
--- /home/postgres/postgres/src/test/regress/expected/stats.out	Fri Jan 23 02:27:21 2026
+++ /home/postgres/postgres/build/testrun/pg_upgrade/002_pg_upgrade/data/results/stats.out	Fri Jan 23 02:31:56 2026
@@ -660,9 +660,9 @@
 (1 row)
 
 SELECT last_seq_scan, last_idx_scan FROM pg_stat_all_tables WHERE relid = 'test_last_scan'::regclass;
- last_seq_scan | last_idx_scan 
----------------+---------------
-               | 
+            last_seq_scan            | last_idx_scan 
+-------------------------------------+---------------
+ Thu Jan 22 18:31:54.889405 2026 PST | 
 (1 row)
 
 COMMIT;
58/6418 Reduce build times of pg_trgm GIN indexes
Windows - Server 2022, MinGW64 - Meson
regress
diff --strip-trailing-cr -U3 C:/cirrus/contrib/pg_trgm/expected/pg_trgm.out C:/cirrus/build/testrun/pg_trgm/regress/resu...
--- C:/cirrus/contrib/pg_trgm/expected/pg_trgm.out	2026-01-23 01:15:45.205654700 +0000
+++ C:/cirrus/build/testrun/pg_trgm/regress/results/pg_trgm.out	2026-01-23 01:24:23.173576200 +0000
@@ -22,5429 +22,7 @@
 (1 row)
 
 select show_trgm('a b c');
-               show_trgm               
----------------------------------------
- {"  a","  b","  c"," a "," b "," c "}
-(1 row)
-
-select show_trgm(' a b c ');
-               show_trgm               
----------------------------------------
- {"  a","  b","  c"," a "," b "," c "}
-(1 row)
-
-select show_trgm('aA bB cC');
-                        show_trgm                        
...
macOS - Sequoia - Meson
regress
diff -U3 /Users/admin/pgsql/contrib/pg_trgm/expected/pg_trgm.out /Users/admin/pgsql/build/testrun/pg_trgm/regress/result...
--- /Users/admin/pgsql/contrib/pg_trgm/expected/pg_trgm.out	2026-01-23 01:14:07
+++ /Users/admin/pgsql/build/testrun/pg_trgm/regress/results/pg_trgm.out	2026-01-23 01:18:59
@@ -22,5429 +22,7 @@
 (1 row)
 
 select show_trgm('a b c');
-               show_trgm               
----------------------------------------
- {"  a","  b","  c"," a "," b "," c "}
-(1 row)
-
-select show_trgm(' a b c ');
-               show_trgm               
----------------------------------------
- {"  a","  b","  c"," a "," b "," c "}
-(1 row)
-
-select show_trgm('aA bB cC');
-                        show_trgm                        
...
Linux - Debian Trixie - Meson
regress
diff -U3 /tmp/cirrus-ci-build/contrib/pg_trgm/expected/pg_trgm.out /tmp/cirrus-ci-build/build/testrun/pg_trgm/regress/re...
--- /tmp/cirrus-ci-build/contrib/pg_trgm/expected/pg_trgm.out	2026-01-23 01:14:16.438773679 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_trgm/regress/results/pg_trgm.out	2026-01-23 01:18:27.653420913 +0000
@@ -22,5429 +22,7 @@
 (1 row)
 
 select show_trgm('a b c');
-               show_trgm               
----------------------------------------
- {"  a","  b","  c"," a "," b "," c "}
-(1 row)
-
-select show_trgm(' a b c ');
-               show_trgm               
----------------------------------------
- {"  a","  b","  c"," a "," b "," c "}
-(1 row)
-
-select show_trgm('aA bB cC');
-                        show_trgm                        
...
Windows - Server 2022, VS 2019 - Meson & ninja
regress
diff --strip-trailing-cr -U3 C:/cirrus/contrib/pg_trgm/expected/pg_trgm.out C:/cirrus/build/testrun/pg_trgm/regress/resu...
--- C:/cirrus/contrib/pg_trgm/expected/pg_trgm.out	2026-01-23 01:14:05.745053200 +0000
+++ C:/cirrus/build/testrun/pg_trgm/regress/results/pg_trgm.out	2026-01-23 01:23:00.527968100 +0000
@@ -22,5429 +22,7 @@
 (1 row)
 
 select show_trgm('a b c');
-               show_trgm               
----------------------------------------
- {"  a","  b","  c"," a "," b "," c "}
-(1 row)
-
-select show_trgm(' a b c ');
-               show_trgm               
----------------------------------------
- {"  a","  b","  c"," a "," b "," c "}
-(1 row)
-
-select show_trgm('aA bB cC');
-                        show_trgm                        
...
FreeBSD - Meson
regress
diff -U3 /tmp/cirrus-ci-build/contrib/pg_trgm/expected/pg_trgm.out /tmp/cirrus-ci-build/build/testrun/pg_trgm/regress/re...
--- /tmp/cirrus-ci-build/contrib/pg_trgm/expected/pg_trgm.out	2026-01-23 01:14:05.371098000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_trgm/regress/results/pg_trgm.out	2026-01-23 01:17:26.156035000 +0000
@@ -22,5429 +22,7 @@
 (1 row)
 
 select show_trgm('a b c');
-               show_trgm               
----------------------------------------
- {"  a","  b","  c"," a "," b "," c "}
-(1 row)
-
-select show_trgm(' a b c ');
-               show_trgm               
----------------------------------------
- {"  a","  b","  c"," a "," b "," c "}
-(1 row)
-
-select show_trgm('aA bB cC');
-                        show_trgm                        
...
OpenBSD - Meson
regress
diff -U3 /home/postgres/postgres/contrib/pg_trgm/expected/pg_trgm.out /home/postgres/postgres/build/testrun/pg_trgm/regr...
--- /home/postgres/postgres/contrib/pg_trgm/expected/pg_trgm.out	Fri Jan 23 01:14:13 2026
+++ /home/postgres/postgres/build/testrun/pg_trgm/regress/results/pg_trgm.out	Fri Jan 23 01:19:22 2026
@@ -22,5429 +22,7 @@
 (1 row)
 
 select show_trgm('a b c');
-               show_trgm               
----------------------------------------
- {"  a","  b","  c"," a "," b "," c "}
-(1 row)
-
-select show_trgm(' a b c ');
-               show_trgm               
----------------------------------------
- {"  a","  b","  c"," a "," b "," c "}
-(1 row)
-
-select show_trgm('aA bB cC');
-                        show_trgm                        
...
Linux - Debian Trixie - Autoconf
regress
diff -U3 /tmp/cirrus-ci-build/contrib/pg_trgm/expected/pg_trgm.out /tmp/cirrus-ci-build/contrib/pg_trgm/results/pg_trgm....
--- /tmp/cirrus-ci-build/contrib/pg_trgm/expected/pg_trgm.out	2026-01-23 01:14:29.563669435 +0000
+++ /tmp/cirrus-ci-build/contrib/pg_trgm/results/pg_trgm.out	2026-01-23 01:19:35.173200336 +0000
@@ -22,5429 +22,7 @@
 (1 row)
 
 select show_trgm('a b c');
-               show_trgm               
----------------------------------------
- {"  a","  b","  c"," a "," b "," c "}
-(1 row)
-
-select show_trgm(' a b c ');
-               show_trgm               
----------------------------------------
- {"  a","  b","  c"," a "," b "," c "}
-(1 row)
-
-select show_trgm('aA bB cC');
-                        show_trgm                        
...
NetBSD - Meson
regress
diff -U3 /home/postgres/postgres/contrib/pg_trgm/expected/pg_trgm.out /home/postgres/postgres/build/testrun/pg_trgm/regr...
--- /home/postgres/postgres/contrib/pg_trgm/expected/pg_trgm.out	2026-01-23 01:14:36.022390838 +0000
+++ /home/postgres/postgres/build/testrun/pg_trgm/regress/results/pg_trgm.out	2026-01-23 01:17:07.385639114 +0000
@@ -22,5429 +22,7 @@
 (1 row)
 
 select show_trgm('a b c');
-               show_trgm               
----------------------------------------
- {"  a","  b","  c"," a "," b "," c "}
-(1 row)
-
-select show_trgm(' a b c ');
-               show_trgm               
----------------------------------------
- {"  a","  b","  c"," a "," b "," c "}
-(1 row)
-
-select show_trgm('aA bB cC');
-                        show_trgm                        
...
54/5829 VCI (columnar store extension)
Linux - Debian Trixie - Meson
regress
diff -U3 /tmp/cirrus-ci-build/contrib/vci/expected/vci.out /tmp/cirrus-ci-build/build/testrun/vci/regress/results/vci.ou...
--- /tmp/cirrus-ci-build/contrib/vci/expected/vci.out	2026-01-22 22:52:32.351102768 +0000
+++ /tmp/cirrus-ci-build/build/testrun/vci/regress/results/vci.out	2026-01-22 22:59:51.391638891 +0000
@@ -88,41 +88,7 @@
 INSERT INTO testtable (key, cond, c01a, c01b, c02, c03, c05, c06, c07, c08, c09, c10, c13, c15, c16, c17, c18, c19, c20...
 -- Create an index which uses VCI index access method
 CREATE INDEX testindex ON testtable USING vci (key, cond, c01a, c01b, c02, c03, c05, c06, c07, c08, c09, c10, c13, c15,...
--- We expect VCI plans are chosen here
-EXPLAIN (ANALYZE, TIMING OFF, COSTS OFF, SUMMARY OFF, BUFFERS OFF)
-SELECT key, count(*) AS count_star, count(c05) AS count_c05 FROM testtable WHERE NOT cond = 0 GROUP BY key ORDER BY key...
-                                           QUERY PLAN                                           
-------------------------------------------------------------------------------------------------
- Sort (actual rows=14.00 loops=1)
-   Sort Key: key
-   Sort Method: quicksort  Memory: 25kB
-   ->  Custom Scan (VCI HashAggregate) (actual rows=14.00 loops=1)
-         Group Key: key
-         ->  Custom Scan (VCI Scan) using testindex on testtable (actual rows=10221.00 loops=1)
-               Filter: (cond <> 0)
-               Rows Removed by Filter: 476
...
57/5952 Speed up COPY FROM text/CSV parsing using SIMD
FreeBSD - Meson
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-01-22 20:12:33.204478000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/postgres_fdw-running/regress/results/postgres_fdw.out	2026-01-22 20:19:55.9176120...
@@ -12696,8 +12696,7 @@
   FROM postgres_fdw_get_connections(true);
  server_name | closed | remote_backend_pid 
 -------------+--------+--------------------
- loopback    | f      | t
-(1 row)
+(0 rows)
 
 -- After terminating the remote backend, since the connection is closed,
 -- "closed" should be TRUE, or NULL if the connection status check
@@ -12713,8 +12712,7 @@
   FROM postgres_fdw_get_connections(true);
  server_name | closed | remote_backend_pid 
 -------------+--------+--------------------
- loopback    | t      | t
-(1 row)
+(0 rows)
...
58/6405 Enable pg_rewind used without wal_log_hints and data_checksums
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-01-22 17:04:49.205683712 +0000
+++ /home/postgres/postgres/build/testrun/isolation/isolation/results/timeouts.out	2026-01-22 17:07:57.384018122 +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;
57/5957 implement CAST(expr AS type FORMAT 'template')
Windows - Server 2022, VS 2019 - Meson & ninja
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/misc.out C:/cirrus/build/testrun/pg_upgrade/002_pg_upgr...
--- C:/cirrus/src/test/regress/expected/misc.out	2026-01-22 04:26:15.728451600 +0000
+++ C:/cirrus/build/testrun/pg_upgrade/002_pg_upgrade/data/results/misc.out	2026-01-22 04:29:56.699482000 +0000
@@ -510,8 +510,12 @@
 
 create index s1 on tcast(cast(col1 as date format 'YYYY-MM-DD')); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format 'YYYY-MM-D...
+                                 ^
 create index s1 on tcast(cast(col1 as date format stable_const())); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format stable_con...
+                                 ^
 create view tcast_v1 as select cast(col1 as date format 'YYYY-MM-DD') from tcast;
 select pg_get_viewdef('tcast_v1', false);
                       pg_get_viewdef                      
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/misc.out C:/cirrus/build/testrun/recovery/027_stream_re...
--- C:/cirrus/src/test/regress/expected/misc.out	2026-01-22 04:26:15.728451600 +0000
+++ C:/cirrus/build/testrun/recovery/027_stream_regress/data/results/misc.out	2026-01-22 04:32:52.635480300 +0000
@@ -510,8 +510,12 @@
 
 create index s1 on tcast(cast(col1 as date format 'YYYY-MM-DD')); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format 'YYYY-MM-D...
+                                 ^
 create index s1 on tcast(cast(col1 as date format stable_const())); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format stable_con...
+                                 ^
 create view tcast_v1 as select cast(col1 as date format 'YYYY-MM-DD') from tcast;
 select pg_get_viewdef('tcast_v1', false);
                       pg_get_viewdef                      
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/misc.out C:/cirrus/build/testrun/regress/regress/result...
--- C:/cirrus/src/test/regress/expected/misc.out	2026-01-22 04:26:15.728451600 +0000
+++ C:/cirrus/build/testrun/regress/regress/results/misc.out	2026-01-22 04:29:51.942644600 +0000
@@ -510,8 +510,12 @@
 
 create index s1 on tcast(cast(col1 as date format 'YYYY-MM-DD')); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format 'YYYY-MM-D...
+                                 ^
 create index s1 on tcast(cast(col1 as date format stable_const())); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format stable_con...
+                                 ^
 create view tcast_v1 as select cast(col1 as date format 'YYYY-MM-DD') from tcast;
 select pg_get_viewdef('tcast_v1', false);
                       pg_get_viewdef                      
Windows - Server 2022, MinGW64 - Meson
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/misc.out C:/cirrus/build/testrun/pg_upgrade/002_pg_upgr...
--- C:/cirrus/src/test/regress/expected/misc.out	2026-01-22 04:26:26.644517300 +0000
+++ C:/cirrus/build/testrun/pg_upgrade/002_pg_upgrade/data/results/misc.out	2026-01-22 04:33:15.008557400 +0000
@@ -510,8 +510,12 @@
 
 create index s1 on tcast(cast(col1 as date format 'YYYY-MM-DD')); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format 'YYYY-MM-D...
+                                 ^
 create index s1 on tcast(cast(col1 as date format stable_const())); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format stable_con...
+                                 ^
 create view tcast_v1 as select cast(col1 as date format 'YYYY-MM-DD') from tcast;
 select pg_get_viewdef('tcast_v1', false);
                       pg_get_viewdef                      
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/misc.out C:/cirrus/build/testrun/recovery/027_stream_re...
--- C:/cirrus/src/test/regress/expected/misc.out	2026-01-22 04:26:26.644517300 +0000
+++ C:/cirrus/build/testrun/recovery/027_stream_regress/data/results/misc.out	2026-01-22 04:36:20.443083200 +0000
@@ -510,8 +510,12 @@
 
 create index s1 on tcast(cast(col1 as date format 'YYYY-MM-DD')); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format 'YYYY-MM-D...
+                                 ^
 create index s1 on tcast(cast(col1 as date format stable_const())); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format stable_con...
+                                 ^
 create view tcast_v1 as select cast(col1 as date format 'YYYY-MM-DD') from tcast;
 select pg_get_viewdef('tcast_v1', false);
                       pg_get_viewdef                      
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/misc.out C:/cirrus/build/testrun/regress/regress/result...
--- C:/cirrus/src/test/regress/expected/misc.out	2026-01-22 04:26:26.644517300 +0000
+++ C:/cirrus/build/testrun/regress/regress/results/misc.out	2026-01-22 04:33:08.678489100 +0000
@@ -510,8 +510,12 @@
 
 create index s1 on tcast(cast(col1 as date format 'YYYY-MM-DD')); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format 'YYYY-MM-D...
+                                 ^
 create index s1 on tcast(cast(col1 as date format stable_const())); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format stable_con...
+                                 ^
 create view tcast_v1 as select cast(col1 as date format 'YYYY-MM-DD') from tcast;
 select pg_get_viewdef('tcast_v1', false);
                       pg_get_viewdef                      
macOS - Sequoia - Meson
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/misc.out /Users/admin/pgsql/build/testrun/pg_upgrade/002_pg_upgrad...
--- /Users/admin/pgsql/src/test/regress/expected/misc.out	2026-01-22 04:26:06
+++ /Users/admin/pgsql/build/testrun/pg_upgrade/002_pg_upgrade/data/results/misc.out	2026-01-22 04:28:42
@@ -510,8 +510,12 @@
 
 create index s1 on tcast(cast(col1 as date format 'YYYY-MM-DD')); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format 'YYYY-MM-D...
+                                 ^
 create index s1 on tcast(cast(col1 as date format stable_const())); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format stable_con...
+                                 ^
 create view tcast_v1 as select cast(col1 as date format 'YYYY-MM-DD') from tcast;
 select pg_get_viewdef('tcast_v1', false);
                       pg_get_viewdef                      
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/misc.out /Users/admin/pgsql/build/testrun/recovery/027_stream_regr...
--- /Users/admin/pgsql/src/test/regress/expected/misc.out	2026-01-22 04:26:06
+++ /Users/admin/pgsql/build/testrun/recovery/027_stream_regress/data/results/misc.out	2026-01-22 04:29:38
@@ -510,8 +510,12 @@
 
 create index s1 on tcast(cast(col1 as date format 'YYYY-MM-DD')); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format 'YYYY-MM-D...
+                                 ^
 create index s1 on tcast(cast(col1 as date format stable_const())); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format stable_con...
+                                 ^
 create view tcast_v1 as select cast(col1 as date format 'YYYY-MM-DD') from tcast;
 select pg_get_viewdef('tcast_v1', false);
                       pg_get_viewdef                      
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/misc.out /Users/admin/pgsql/build/testrun/regress/regress/results/...
--- /Users/admin/pgsql/src/test/regress/expected/misc.out	2026-01-22 04:26:06
+++ /Users/admin/pgsql/build/testrun/regress/regress/results/misc.out	2026-01-22 04:28:43
@@ -510,8 +510,12 @@
 
 create index s1 on tcast(cast(col1 as date format 'YYYY-MM-DD')); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format 'YYYY-MM-D...
+                                 ^
 create index s1 on tcast(cast(col1 as date format stable_const())); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format stable_con...
+                                 ^
 create view tcast_v1 as select cast(col1 as date format 'YYYY-MM-DD') from tcast;
 select pg_get_viewdef('tcast_v1', false);
                       pg_get_viewdef                      
Linux - Debian Trixie - Meson
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/misc.out /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_up...
--- /tmp/cirrus-ci-build/src/test/regress/expected/misc.out	2026-01-22 04:26:15.820764366 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_upgrade/data/results/misc.out	2026-01-22 04:30:49.084376501 +00...
@@ -510,8 +510,12 @@
 
 create index s1 on tcast(cast(col1 as date format 'YYYY-MM-DD')); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format 'YYYY-MM-D...
+                                 ^
 create index s1 on tcast(cast(col1 as date format stable_const())); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format stable_con...
+                                 ^
 create view tcast_v1 as select cast(col1 as date format 'YYYY-MM-DD') from tcast;
 select pg_get_viewdef('tcast_v1', false);
                       pg_get_viewdef                      
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/misc.out /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_...
--- /tmp/cirrus-ci-build/src/test/regress/expected/misc.out	2026-01-22 04:26:15.820764366 +0000
+++ /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_regress/data/results/misc.out	2026-01-22 04:32:14.135190543 +...
@@ -510,8 +510,12 @@
 
 create index s1 on tcast(cast(col1 as date format 'YYYY-MM-DD')); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format 'YYYY-MM-D...
+                                 ^
 create index s1 on tcast(cast(col1 as date format stable_const())); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format stable_con...
+                                 ^
 create view tcast_v1 as select cast(col1 as date format 'YYYY-MM-DD') from tcast;
 select pg_get_viewdef('tcast_v1', false);
                       pg_get_viewdef                      
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/misc.out /tmp/cirrus-ci-build/build/testrun/regress/regress/resu...
--- /tmp/cirrus-ci-build/src/test/regress/expected/misc.out	2026-01-22 04:26:15.820764366 +0000
+++ /tmp/cirrus-ci-build/build/testrun/regress/regress/results/misc.out	2026-01-22 04:30:49.856362529 +0000
@@ -510,8 +510,12 @@
 
 create index s1 on tcast(cast(col1 as date format 'YYYY-MM-DD')); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format 'YYYY-MM-D...
+                                 ^
 create index s1 on tcast(cast(col1 as date format stable_const())); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format stable_con...
+                                 ^
 create view tcast_v1 as select cast(col1 as date format 'YYYY-MM-DD') from tcast;
 select pg_get_viewdef('tcast_v1', false);
                       pg_get_viewdef                      
NetBSD - Meson
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/misc.out /home/postgres/postgres/build/testrun/pg_upgrade/002...
--- /home/postgres/postgres/src/test/regress/expected/misc.out	2026-01-22 04:26:41.191837614 +0000
+++ /home/postgres/postgres/build/testrun/pg_upgrade/002_pg_upgrade/data/results/misc.out	2026-01-22 04:29:38.018065897 ...
@@ -510,8 +510,12 @@
 
 create index s1 on tcast(cast(col1 as date format 'YYYY-MM-DD')); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format 'YYYY-MM-D...
+                                 ^
 create index s1 on tcast(cast(col1 as date format stable_const())); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format stable_con...
+                                 ^
 create view tcast_v1 as select cast(col1 as date format 'YYYY-MM-DD') from tcast;
 select pg_get_viewdef('tcast_v1', false);
                       pg_get_viewdef                      
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/misc.out /home/postgres/postgres/build/testrun/recovery/027_s...
--- /home/postgres/postgres/src/test/regress/expected/misc.out	2026-01-22 04:26:41.191837614 +0000
+++ /home/postgres/postgres/build/testrun/recovery/027_stream_regress/data/results/misc.out	2026-01-22 04:30:23.29794673...
@@ -510,8 +510,12 @@
 
 create index s1 on tcast(cast(col1 as date format 'YYYY-MM-DD')); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format 'YYYY-MM-D...
+                                 ^
 create index s1 on tcast(cast(col1 as date format stable_const())); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format stable_con...
+                                 ^
 create view tcast_v1 as select cast(col1 as date format 'YYYY-MM-DD') from tcast;
 select pg_get_viewdef('tcast_v1', false);
                       pg_get_viewdef                      
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/misc.out /home/postgres/postgres/build/testrun/regress/regres...
--- /home/postgres/postgres/src/test/regress/expected/misc.out	2026-01-22 04:26:41.191837614 +0000
+++ /home/postgres/postgres/build/testrun/regress/regress/results/misc.out	2026-01-22 04:29:32.711934620 +0000
@@ -510,8 +510,12 @@
 
 create index s1 on tcast(cast(col1 as date format 'YYYY-MM-DD')); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format 'YYYY-MM-D...
+                                 ^
 create index s1 on tcast(cast(col1 as date format stable_const())); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format stable_con...
+                                 ^
 create view tcast_v1 as select cast(col1 as date format 'YYYY-MM-DD') from tcast;
 select pg_get_viewdef('tcast_v1', false);
                       pg_get_viewdef                      
FreeBSD - Meson
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/misc.out /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_up...
--- /tmp/cirrus-ci-build/src/test/regress/expected/misc.out	2026-01-22 04:26:12.584491000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_upgrade/data/results/misc.out	2026-01-22 04:29:20.354925000 +00...
@@ -510,8 +510,12 @@
 
 create index s1 on tcast(cast(col1 as date format 'YYYY-MM-DD')); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format 'YYYY-MM-D...
+                                 ^
 create index s1 on tcast(cast(col1 as date format stable_const())); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format stable_con...
+                                 ^
 create view tcast_v1 as select cast(col1 as date format 'YYYY-MM-DD') from tcast;
 select pg_get_viewdef('tcast_v1', false);
                       pg_get_viewdef                      
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/misc.out /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_...
--- /tmp/cirrus-ci-build/src/test/regress/expected/misc.out	2026-01-22 04:26:12.584491000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_regress/data/results/misc.out	2026-01-22 04:30:52.472223000 +...
@@ -510,8 +510,12 @@
 
 create index s1 on tcast(cast(col1 as date format 'YYYY-MM-DD')); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format 'YYYY-MM-D...
+                                 ^
 create index s1 on tcast(cast(col1 as date format stable_const())); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format stable_con...
+                                 ^
 create view tcast_v1 as select cast(col1 as date format 'YYYY-MM-DD') from tcast;
 select pg_get_viewdef('tcast_v1', false);
                       pg_get_viewdef                      
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/misc.out /tmp/cirrus-ci-build/build/testrun/regress/regress/resu...
--- /tmp/cirrus-ci-build/src/test/regress/expected/misc.out	2026-01-22 04:26:12.584491000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/regress/regress/results/misc.out	2026-01-22 04:29:12.842123000 +0000
@@ -510,8 +510,12 @@
 
 create index s1 on tcast(cast(col1 as date format 'YYYY-MM-DD')); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format 'YYYY-MM-D...
+                                 ^
 create index s1 on tcast(cast(col1 as date format stable_const())); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format stable_con...
+                                 ^
 create view tcast_v1 as select cast(col1 as date format 'YYYY-MM-DD') from tcast;
 select pg_get_viewdef('tcast_v1', false);
                       pg_get_viewdef                      
OpenBSD - Meson
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/misc.out /home/postgres/postgres/build/testrun/pg_upgrade/002...
--- /home/postgres/postgres/src/test/regress/expected/misc.out	Thu Jan 22 04:26:22 2026
+++ /home/postgres/postgres/build/testrun/pg_upgrade/002_pg_upgrade/data/results/misc.out	Thu Jan 22 04:30:20 2026
@@ -510,8 +510,12 @@
 
 create index s1 on tcast(cast(col1 as date format 'YYYY-MM-DD')); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format 'YYYY-MM-D...
+                                 ^
 create index s1 on tcast(cast(col1 as date format stable_const())); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format stable_con...
+                                 ^
 create view tcast_v1 as select cast(col1 as date format 'YYYY-MM-DD') from tcast;
 select pg_get_viewdef('tcast_v1', false);
                       pg_get_viewdef                      
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/misc.out /home/postgres/postgres/build/testrun/recovery/027_s...
--- /home/postgres/postgres/src/test/regress/expected/misc.out	Thu Jan 22 04:26:22 2026
+++ /home/postgres/postgres/build/testrun/recovery/027_stream_regress/data/results/misc.out	Thu Jan 22 04:32:13 2026
@@ -510,8 +510,12 @@
 
 create index s1 on tcast(cast(col1 as date format 'YYYY-MM-DD')); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format 'YYYY-MM-D...
+                                 ^
 create index s1 on tcast(cast(col1 as date format stable_const())); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format stable_con...
+                                 ^
 create view tcast_v1 as select cast(col1 as date format 'YYYY-MM-DD') from tcast;
 select pg_get_viewdef('tcast_v1', false);
                       pg_get_viewdef                      
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/misc.out /home/postgres/postgres/build/testrun/regress/regres...
--- /home/postgres/postgres/src/test/regress/expected/misc.out	Thu Jan 22 04:26:22 2026
+++ /home/postgres/postgres/build/testrun/regress/regress/results/misc.out	Thu Jan 22 04:30:16 2026
@@ -510,8 +510,12 @@
 
 create index s1 on tcast(cast(col1 as date format 'YYYY-MM-DD')); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format 'YYYY-MM-D...
+                                 ^
 create index s1 on tcast(cast(col1 as date format stable_const())); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format stable_con...
+                                 ^
 create view tcast_v1 as select cast(col1 as date format 'YYYY-MM-DD') from tcast;
 select pg_get_viewdef('tcast_v1', false);
                       pg_get_viewdef                      
Linux - Debian Trixie - Autoconf
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/misc.out /tmp/cirrus-ci-build/src/bin/pg_upgrade/tmp_check/resul...
--- /tmp/cirrus-ci-build/src/test/regress/expected/misc.out	2026-01-22 04:26:20.304588713 +0000
+++ /tmp/cirrus-ci-build/src/bin/pg_upgrade/tmp_check/results/misc.out	2026-01-22 04:34:22.226645443 +0000
@@ -510,8 +510,12 @@
 
 create index s1 on tcast(cast(col1 as date format 'YYYY-MM-DD')); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format 'YYYY-MM-D...
+                                 ^
 create index s1 on tcast(cast(col1 as date format stable_const())); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format stable_con...
+                                 ^
 create view tcast_v1 as select cast(col1 as date format 'YYYY-MM-DD') from tcast;
 select pg_get_viewdef('tcast_v1', false);
                       pg_get_viewdef                      
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/misc.out /tmp/cirrus-ci-build/src/test/recovery/tmp_check/result...
--- /tmp/cirrus-ci-build/src/test/regress/expected/misc.out	2026-01-22 04:26:20.304588713 +0000
+++ /tmp/cirrus-ci-build/src/test/recovery/tmp_check/results/misc.out	2026-01-22 04:35:53.349664807 +0000
@@ -510,8 +510,12 @@
 
 create index s1 on tcast(cast(col1 as date format 'YYYY-MM-DD')); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format 'YYYY-MM-D...
+                                 ^
 create index s1 on tcast(cast(col1 as date format stable_const())); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format stable_con...
+                                 ^
 create view tcast_v1 as select cast(col1 as date format 'YYYY-MM-DD') from tcast;
 select pg_get_viewdef('tcast_v1', false);
                       pg_get_viewdef                      
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/misc.out /tmp/cirrus-ci-build/src/test/regress/results/misc.out
--- /tmp/cirrus-ci-build/src/test/regress/expected/misc.out	2026-01-22 04:26:20.304588713 +0000
+++ /tmp/cirrus-ci-build/src/test/regress/results/misc.out	2026-01-22 04:31:58.892914763 +0000
@@ -510,8 +510,12 @@
 
 create index s1 on tcast(cast(col1 as date format 'YYYY-MM-DD')); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format 'YYYY-MM-D...
+                                 ^
 create index s1 on tcast(cast(col1 as date format stable_const())); --error
 ERROR:  functions in index expression must be marked IMMUTABLE
+LINE 1: create index s1 on tcast(cast(col1 as date format stable_con...
+                                 ^
 create view tcast_v1 as select cast(col1 as date format 'YYYY-MM-DD') from tcast;
 select pg_get_viewdef('tcast_v1', false);
                       pg_get_viewdef                      
57/6054 let ALTER COLUMN SET DATA TYPE cope with POLICY dependency
Windows - Server 2022, VS 2019 - Meson & ninja
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/rowsecurity.out C:/cirrus/build/testrun/recovery/027_st...
--- C:/cirrus/src/test/regress/expected/rowsecurity.out	2026-01-22 01:19:08.253765500 +0000
+++ C:/cirrus/build/testrun/recovery/027_stream_regress/data/results/rowsecurity.out	2026-01-22 01:25:55.009479100 +0000
@@ -378,15 +378,15 @@
 --------------------+----------+-------+----------------------------------------------+-------------------+------------...
  regress_rls_schema | category | table | regress_rls_alice=arwdDxtm/regress_rls_alice+|                   | 
                     |          |       | =arwdDxtm/regress_rls_alice                  |                   | 
- regress_rls_schema | document | table | regress_rls_alice=arwdDxtm/regress_rls_alice+|                   | p1:        ...
-                    |          |       | =arwdDxtm/regress_rls_alice                  |                   |   (u): (dle...
+ regress_rls_schema | document | table | regress_rls_alice=arwdDxtm/regress_rls_alice+|                   | p1r (RESTRI...
+                    |          |       | =arwdDxtm/regress_rls_alice                  |                   |   (u): (cid...
+                    |          |       |                                              |                   |   to: regre...
+                    |          |       |                                              |                   | p1:        ...
+                    |          |       |                                              |                   |   (u): (dle...
                     |          |       |                                              |                   |    FROM uac...
                     |          |       |                                              |                   |   WHERE (ua...
                     |          |       |                                              |                   | p2r (RESTRI...
                     |          |       |                                              |                   |   (u): ((ci...
-                    |          |       |                                              |                   |   to: regre...
-                    |          |       |                                              |                   | p1r (RESTRI...
...
57/6334 Remove header lock BufferGetLSNAtomic() on architectures with 64 bit atomic operations
Linux - Debian Trixie - Meson
regress
diff -U3 /tmp/cirrus-ci-build/contrib/pageinspect/expected/page.out /tmp/cirrus-ci-build/build/testrun/pageinspect/regre...
--- /tmp/cirrus-ci-build/contrib/pageinspect/expected/page.out	2026-01-21 22:54:14.548443146 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pageinspect/regress/results/page.out	2026-01-21 23:00:26.594016782 +0000
@@ -62,227 +62,7 @@
 ERROR:  invalid block number
 SELECT tuple_data_split('test1'::regclass, t_data, t_infomask, t_infomask2, t_bits)
     FROM heap_page_items(get_raw_page('test1', 0));
-       tuple_data_split        
--------------------------------
- {"\\x01000001","\\x00020200"}
-(1 row)
-
-SELECT * FROM fsm_page_contents(get_raw_page('test1', 'fsm', 0));
- fsm_page_contents 
--------------------
- 0: 254           +
- 1: 254           +
- 3: 254           +
- 7: 254           +
- 15: 254          +
...
58/6410 Enhance btree's pageinspect
macOS - Sequoia - Meson
regress
diff -U3 /Users/admin/pgsql/contrib/pageinspect/expected/btree.out /Users/admin/pgsql/build/testrun/pageinspect/regress/...
--- /Users/admin/pgsql/contrib/pageinspect/expected/btree.out	2026-01-21 22:31:16
+++ /Users/admin/pgsql/build/testrun/pageinspect/regress/results/btree.out	2026-01-21 22:35:23
@@ -148,23 +148,25 @@
 ERROR:  block number 7 is out of range
 DROP TABLE test2;
 SELECT * FROM bt_page_items('test1_a_idx', -1);
-ERROR:  invalid block number -1
+ERROR:  function bt_page_items(unknown, integer) does not exist
+LINE 1: SELECT * FROM bt_page_items('test1_a_idx', -1);
+                      ^
+DETAIL:  No function of that name accepts the given number of arguments.
 SELECT * FROM bt_page_items('test1_a_idx', 0);
-ERROR:  block 0 is a meta page
+ERROR:  function bt_page_items(unknown, integer) does not exist
+LINE 1: SELECT * FROM bt_page_items('test1_a_idx', 0);
+                      ^
+DETAIL:  No function of that name accepts the given number of arguments.
 SELECT * FROM bt_page_items('test1_a_idx', 1);
--[ RECORD 1 ]-----------------------
...
Windows - Server 2022, VS 2019 - Meson & ninja
regress
diff --strip-trailing-cr -U3 C:/cirrus/contrib/pageinspect/expected/btree.out C:/cirrus/build/testrun/pageinspect/regres...
--- C:/cirrus/contrib/pageinspect/expected/btree.out	2026-01-21 22:31:29.157690500 +0000
+++ C:/cirrus/build/testrun/pageinspect/regress/results/btree.out	2026-01-21 22:39:15.775596800 +0000
@@ -148,23 +148,25 @@
 ERROR:  block number 7 is out of range
 DROP TABLE test2;
 SELECT * FROM bt_page_items('test1_a_idx', -1);
-ERROR:  invalid block number -1
+ERROR:  function bt_page_items(unknown, integer) does not exist
+LINE 1: SELECT * FROM bt_page_items('test1_a_idx', -1);
+                      ^
+DETAIL:  No function of that name accepts the given number of arguments.
 SELECT * FROM bt_page_items('test1_a_idx', 0);
-ERROR:  block 0 is a meta page
+ERROR:  function bt_page_items(unknown, integer) does not exist
+LINE 1: SELECT * FROM bt_page_items('test1_a_idx', 0);
+                      ^
+DETAIL:  No function of that name accepts the given number of arguments.
 SELECT * FROM bt_page_items('test1_a_idx', 1);
--[ RECORD 1 ]-----------------------
...
Windows - Server 2022, MinGW64 - Meson
regress
diff --strip-trailing-cr -U3 C:/cirrus/contrib/pageinspect/expected/btree.out C:/cirrus/build/testrun/pageinspect/regres...
--- C:/cirrus/contrib/pageinspect/expected/btree.out	2026-01-21 22:31:29.453239400 +0000
+++ C:/cirrus/build/testrun/pageinspect/regress/results/btree.out	2026-01-21 22:39:30.147567200 +0000
@@ -148,23 +148,25 @@
 ERROR:  block number 7 is out of range
 DROP TABLE test2;
 SELECT * FROM bt_page_items('test1_a_idx', -1);
-ERROR:  invalid block number -1
+ERROR:  function bt_page_items(unknown, integer) does not exist
+LINE 1: SELECT * FROM bt_page_items('test1_a_idx', -1);
+                      ^
+DETAIL:  No function of that name accepts the given number of arguments.
 SELECT * FROM bt_page_items('test1_a_idx', 0);
-ERROR:  block 0 is a meta page
+ERROR:  function bt_page_items(unknown, integer) does not exist
+LINE 1: SELECT * FROM bt_page_items('test1_a_idx', 0);
+                      ^
+DETAIL:  No function of that name accepts the given number of arguments.
 SELECT * FROM bt_page_items('test1_a_idx', 1);
--[ RECORD 1 ]-----------------------
...
Linux - Debian Trixie - Meson
regress
diff -U3 /tmp/cirrus-ci-build/contrib/pageinspect/expected/btree.out /tmp/cirrus-ci-build/build/testrun/pageinspect/regr...
--- /tmp/cirrus-ci-build/contrib/pageinspect/expected/btree.out	2026-01-21 22:31:40.344057565 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pageinspect/regress/results/btree.out	2026-01-21 22:35:34.159219660 +0000
@@ -148,23 +148,25 @@
 ERROR:  block number 7 is out of range
 DROP TABLE test2;
 SELECT * FROM bt_page_items('test1_a_idx', -1);
-ERROR:  invalid block number -1
+ERROR:  function bt_page_items(unknown, integer) does not exist
+LINE 1: SELECT * FROM bt_page_items('test1_a_idx', -1);
+                      ^
+DETAIL:  No function of that name accepts the given number of arguments.
 SELECT * FROM bt_page_items('test1_a_idx', 0);
-ERROR:  block 0 is a meta page
+ERROR:  function bt_page_items(unknown, integer) does not exist
+LINE 1: SELECT * FROM bt_page_items('test1_a_idx', 0);
+                      ^
+DETAIL:  No function of that name accepts the given number of arguments.
 SELECT * FROM bt_page_items('test1_a_idx', 1);
--[ RECORD 1 ]-----------------------
...
FreeBSD - Meson
regress
diff -U3 /tmp/cirrus-ci-build/contrib/pageinspect/expected/btree.out /tmp/cirrus-ci-build/build/testrun/pageinspect/regr...
--- /tmp/cirrus-ci-build/contrib/pageinspect/expected/btree.out	2026-01-21 22:31:40.268113000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pageinspect/regress/results/btree.out	2026-01-21 22:34:37.349901000 +0000
@@ -148,23 +148,25 @@
 ERROR:  block number 7 is out of range
 DROP TABLE test2;
 SELECT * FROM bt_page_items('test1_a_idx', -1);
-ERROR:  invalid block number -1
+ERROR:  function bt_page_items(unknown, integer) does not exist
+LINE 1: SELECT * FROM bt_page_items('test1_a_idx', -1);
+                      ^
+DETAIL:  No function of that name accepts the given number of arguments.
 SELECT * FROM bt_page_items('test1_a_idx', 0);
-ERROR:  block 0 is a meta page
+ERROR:  function bt_page_items(unknown, integer) does not exist
+LINE 1: SELECT * FROM bt_page_items('test1_a_idx', 0);
+                      ^
+DETAIL:  No function of that name accepts the given number of arguments.
 SELECT * FROM bt_page_items('test1_a_idx', 1);
--[ RECORD 1 ]-----------------------
...
Linux - Debian Trixie - Autoconf
regress
diff -U3 /tmp/cirrus-ci-build/contrib/pageinspect/expected/btree.out /tmp/cirrus-ci-build/contrib/pageinspect/results/bt...
--- /tmp/cirrus-ci-build/contrib/pageinspect/expected/btree.out	2026-01-21 22:31:28.439036147 +0000
+++ /tmp/cirrus-ci-build/contrib/pageinspect/results/btree.out	2026-01-21 22:35:57.671525092 +0000
@@ -148,23 +148,25 @@
 ERROR:  block number 7 is out of range
 DROP TABLE test2;
 SELECT * FROM bt_page_items('test1_a_idx', -1);
-ERROR:  invalid block number -1
+ERROR:  function bt_page_items(unknown, integer) does not exist
+LINE 1: SELECT * FROM bt_page_items('test1_a_idx', -1);
+                      ^
+DETAIL:  No function of that name accepts the given number of arguments.
 SELECT * FROM bt_page_items('test1_a_idx', 0);
-ERROR:  block 0 is a meta page
+ERROR:  function bt_page_items(unknown, integer) does not exist
+LINE 1: SELECT * FROM bt_page_items('test1_a_idx', 0);
+                      ^
+DETAIL:  No function of that name accepts the given number of arguments.
 SELECT * FROM bt_page_items('test1_a_idx', 1);
--[ RECORD 1 ]-----------------------
...
OpenBSD - Meson
regress
diff -U3 /home/postgres/postgres/contrib/pageinspect/expected/btree.out /home/postgres/postgres/build/testrun/pageinspec...
--- /home/postgres/postgres/contrib/pageinspect/expected/btree.out	Wed Jan 21 22:31:30 2026
+++ /home/postgres/postgres/build/testrun/pageinspect/regress/results/btree.out	Wed Jan 21 22:36:15 2026
@@ -148,23 +148,25 @@
 ERROR:  block number 7 is out of range
 DROP TABLE test2;
 SELECT * FROM bt_page_items('test1_a_idx', -1);
-ERROR:  invalid block number -1
+ERROR:  function bt_page_items(unknown, integer) does not exist
+LINE 1: SELECT * FROM bt_page_items('test1_a_idx', -1);
+                      ^
+DETAIL:  No function of that name accepts the given number of arguments.
 SELECT * FROM bt_page_items('test1_a_idx', 0);
-ERROR:  block 0 is a meta page
+ERROR:  function bt_page_items(unknown, integer) does not exist
+LINE 1: SELECT * FROM bt_page_items('test1_a_idx', 0);
+                      ^
+DETAIL:  No function of that name accepts the given number of arguments.
 SELECT * FROM bt_page_items('test1_a_idx', 1);
--[ RECORD 1 ]-----------------------
...
NetBSD - Meson
regress
diff -U3 /home/postgres/postgres/contrib/pageinspect/expected/btree.out /home/postgres/postgres/build/testrun/pageinspec...
--- /home/postgres/postgres/contrib/pageinspect/expected/btree.out	2026-01-21 22:31:37.633303741 +0000
+++ /home/postgres/postgres/build/testrun/pageinspect/regress/results/btree.out	2026-01-21 22:33:57.833222599 +0000
@@ -148,23 +148,25 @@
 ERROR:  block number 7 is out of range
 DROP TABLE test2;
 SELECT * FROM bt_page_items('test1_a_idx', -1);
-ERROR:  invalid block number -1
+ERROR:  function bt_page_items(unknown, integer) does not exist
+LINE 1: SELECT * FROM bt_page_items('test1_a_idx', -1);
+                      ^
+DETAIL:  No function of that name accepts the given number of arguments.
 SELECT * FROM bt_page_items('test1_a_idx', 0);
-ERROR:  block 0 is a meta page
+ERROR:  function bt_page_items(unknown, integer) does not exist
+LINE 1: SELECT * FROM bt_page_items('test1_a_idx', 0);
+                      ^
+DETAIL:  No function of that name accepts the given number of arguments.
 SELECT * FROM bt_page_items('test1_a_idx', 1);
--[ RECORD 1 ]-----------------------
...
58/6372 XSD schema validation
Windows - Server 2022, VS 2019 - Meson & ninja
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/xml_1.out C:/cirrus/build/testrun/pg_upgrade/002_pg_upg...
--- C:/cirrus/src/test/regress/expected/xml_1.out	2026-01-21 21:12:15.537734700 +0000
+++ C:/cirrus/build/testrun/pg_upgrade/002_pg_upgrade/data/results/xml.out	2026-01-21 21:16:33.646899400 +0000
@@ -1496,3 +1496,305 @@
 LINE 1: SELECT xmltext('x'|| '<P>73</P>'::xml || .42 || true || 'j':...
                              ^
 DETAIL:  This functionality requires the server to be built with libxml support.
+CREATE XMLSCHEMA person_schema AS '<?xml version="1.0"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
+  <xs:element name="person">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element name="name" type="xs:string"/>
+        <xs:element name="age" type="xs:integer"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+</xs:schema>';
+ERROR:  unsupported XML feature
+LINE 1: CREATE XMLSCHEMA person_schema AS '<?xml version="1.0"?>
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/xml_1.out C:/cirrus/build/testrun/recovery/027_stream_r...
--- C:/cirrus/src/test/regress/expected/xml_1.out	2026-01-21 21:12:15.537734700 +0000
+++ C:/cirrus/build/testrun/recovery/027_stream_regress/data/results/xml.out	2026-01-21 21:19:37.616117000 +0000
@@ -1496,3 +1496,305 @@
 LINE 1: SELECT xmltext('x'|| '<P>73</P>'::xml || .42 || true || 'j':...
                              ^
 DETAIL:  This functionality requires the server to be built with libxml support.
+CREATE XMLSCHEMA person_schema AS '<?xml version="1.0"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
+  <xs:element name="person">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element name="name" type="xs:string"/>
+        <xs:element name="age" type="xs:integer"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+</xs:schema>';
+ERROR:  unsupported XML feature
+LINE 1: CREATE XMLSCHEMA person_schema AS '<?xml version="1.0"?>
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/xml_1.out C:/cirrus/build/testrun/regress/regress/resul...
--- C:/cirrus/src/test/regress/expected/xml_1.out	2026-01-21 21:12:15.537734700 +0000
+++ C:/cirrus/build/testrun/regress/regress/results/xml.out	2026-01-21 21:16:26.617132300 +0000
@@ -1496,3 +1496,305 @@
 LINE 1: SELECT xmltext('x'|| '<P>73</P>'::xml || .42 || true || 'j':...
                              ^
 DETAIL:  This functionality requires the server to be built with libxml support.
+CREATE XMLSCHEMA person_schema AS '<?xml version="1.0"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
+  <xs:element name="person">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element name="name" type="xs:string"/>
+        <xs:element name="age" type="xs:integer"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+</xs:schema>';
+ERROR:  unsupported XML feature
+LINE 1: CREATE XMLSCHEMA person_schema AS '<?xml version="1.0"?>
...
57/6274 Add a greedy join search algorithm to handle large join problems
Windows - Server 2022, VS 2019 - Meson & ninja
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/goo.out C:/cirrus/build/testrun/pg_upgrade/002_pg_upgra...
--- C:/cirrus/src/test/regress/expected/goo.out	2026-01-21 06:26:31.197273100 +0000
+++ C:/cirrus/build/testrun/pg_upgrade/002_pg_upgrade/data/results/goo.out	2026-01-21 06:30:32.296669300 +0000
@@ -177,66 +177,66 @@
 JOIN t13 ON t11.l = t13.l
 JOIN t14 ON t12.m = t14.m
 JOIN t15 ON t13.n = t15.n;
-                           QUERY PLAN                           
-----------------------------------------------------------------
+                                 QUERY PLAN                                 
+----------------------------------------------------------------------------
  Aggregate
    ->  Hash Join
-         Hash Cond: (t7.h = t9.h)
+         Hash Cond: (t11.l = t13.l)
          ->  Hash Join
-               Hash Cond: (t8.i = t10.i)
+               Hash Cond: (t9.j = t11.j)
                ->  Hash Join
-                     Hash Cond: (t2.c = t4.c)
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/goo.out C:/cirrus/build/testrun/recovery/027_stream_reg...
--- C:/cirrus/src/test/regress/expected/goo.out	2026-01-21 06:26:31.197273100 +0000
+++ C:/cirrus/build/testrun/recovery/027_stream_regress/data/results/goo.out	2026-01-21 06:33:51.284878000 +0000
@@ -177,66 +177,66 @@
 JOIN t13 ON t11.l = t13.l
 JOIN t14 ON t12.m = t14.m
 JOIN t15 ON t13.n = t15.n;
-                           QUERY PLAN                           
-----------------------------------------------------------------
+                                 QUERY PLAN                                 
+----------------------------------------------------------------------------
  Aggregate
    ->  Hash Join
-         Hash Cond: (t7.h = t9.h)
+         Hash Cond: (t11.l = t13.l)
          ->  Hash Join
-               Hash Cond: (t8.i = t10.i)
+               Hash Cond: (t9.j = t11.j)
                ->  Hash Join
-                     Hash Cond: (t2.c = t4.c)
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/goo.out C:/cirrus/build/testrun/regress/regress/results...
--- C:/cirrus/src/test/regress/expected/goo.out	2026-01-21 06:26:31.197273100 +0000
+++ C:/cirrus/build/testrun/regress/regress/results/goo.out	2026-01-21 06:30:30.783013500 +0000
@@ -177,66 +177,66 @@
 JOIN t13 ON t11.l = t13.l
 JOIN t14 ON t12.m = t14.m
 JOIN t15 ON t13.n = t15.n;
-                           QUERY PLAN                           
-----------------------------------------------------------------
+                                 QUERY PLAN                                 
+----------------------------------------------------------------------------
  Aggregate
    ->  Hash Join
-         Hash Cond: (t7.h = t9.h)
+         Hash Cond: (t11.l = t13.l)
          ->  Hash Join
-               Hash Cond: (t8.i = t10.i)
+               Hash Cond: (t9.j = t11.j)
                ->  Hash Join
-                     Hash Cond: (t2.c = t4.c)
...
Windows - Server 2022, MinGW64 - Meson
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/goo.out C:/cirrus/build/testrun/pg_upgrade/002_pg_upgra...
--- C:/cirrus/src/test/regress/expected/goo.out	2026-01-21 06:26:38.181832700 +0000
+++ C:/cirrus/build/testrun/pg_upgrade/002_pg_upgrade/data/results/goo.out	2026-01-21 06:31:24.682726200 +0000
@@ -177,66 +177,66 @@
 JOIN t13 ON t11.l = t13.l
 JOIN t14 ON t12.m = t14.m
 JOIN t15 ON t13.n = t15.n;
-                           QUERY PLAN                           
-----------------------------------------------------------------
+                                 QUERY PLAN                                 
+----------------------------------------------------------------------------
  Aggregate
    ->  Hash Join
-         Hash Cond: (t7.h = t9.h)
+         Hash Cond: (t11.l = t13.l)
          ->  Hash Join
-               Hash Cond: (t8.i = t10.i)
+               Hash Cond: (t9.j = t11.j)
                ->  Hash Join
-                     Hash Cond: (t2.c = t4.c)
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/goo.out C:/cirrus/build/testrun/recovery/027_stream_reg...
--- C:/cirrus/src/test/regress/expected/goo.out	2026-01-21 06:26:38.181832700 +0000
+++ C:/cirrus/build/testrun/recovery/027_stream_regress/data/results/goo.out	2026-01-21 06:34:23.300929900 +0000
@@ -177,66 +177,66 @@
 JOIN t13 ON t11.l = t13.l
 JOIN t14 ON t12.m = t14.m
 JOIN t15 ON t13.n = t15.n;
-                           QUERY PLAN                           
-----------------------------------------------------------------
+                                 QUERY PLAN                                 
+----------------------------------------------------------------------------
  Aggregate
    ->  Hash Join
-         Hash Cond: (t7.h = t9.h)
+         Hash Cond: (t11.l = t13.l)
          ->  Hash Join
-               Hash Cond: (t8.i = t10.i)
+               Hash Cond: (t9.j = t11.j)
                ->  Hash Join
-                     Hash Cond: (t2.c = t4.c)
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/goo.out C:/cirrus/build/testrun/regress/regress/results...
--- C:/cirrus/src/test/regress/expected/goo.out	2026-01-21 06:26:38.181832700 +0000
+++ C:/cirrus/build/testrun/regress/regress/results/goo.out	2026-01-21 06:31:23.336530500 +0000
@@ -177,66 +177,66 @@
 JOIN t13 ON t11.l = t13.l
 JOIN t14 ON t12.m = t14.m
 JOIN t15 ON t13.n = t15.n;
-                           QUERY PLAN                           
-----------------------------------------------------------------
+                                 QUERY PLAN                                 
+----------------------------------------------------------------------------
  Aggregate
    ->  Hash Join
-         Hash Cond: (t7.h = t9.h)
+         Hash Cond: (t11.l = t13.l)
          ->  Hash Join
-               Hash Cond: (t8.i = t10.i)
+               Hash Cond: (t9.j = t11.j)
                ->  Hash Join
-                     Hash Cond: (t2.c = t4.c)
...
macOS - Sequoia - Meson
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/goo.out /Users/admin/pgsql/build/testrun/pg_upgrade/002_pg_upgrade...
--- /Users/admin/pgsql/src/test/regress/expected/goo.out	2026-01-21 06:27:21
+++ /Users/admin/pgsql/build/testrun/pg_upgrade/002_pg_upgrade/data/results/goo.out	2026-01-21 06:30:48
@@ -177,66 +177,66 @@
 JOIN t13 ON t11.l = t13.l
 JOIN t14 ON t12.m = t14.m
 JOIN t15 ON t13.n = t15.n;
-                           QUERY PLAN                           
-----------------------------------------------------------------
+                                 QUERY PLAN                                 
+----------------------------------------------------------------------------
  Aggregate
    ->  Hash Join
-         Hash Cond: (t7.h = t9.h)
+         Hash Cond: (t11.l = t13.l)
          ->  Hash Join
-               Hash Cond: (t8.i = t10.i)
+               Hash Cond: (t9.j = t11.j)
                ->  Hash Join
-                     Hash Cond: (t2.c = t4.c)
...
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/goo.out /Users/admin/pgsql/build/testrun/recovery/027_stream_regre...
--- /Users/admin/pgsql/src/test/regress/expected/goo.out	2026-01-21 06:27:21
+++ /Users/admin/pgsql/build/testrun/recovery/027_stream_regress/data/results/goo.out	2026-01-21 06:32:58
@@ -177,66 +177,66 @@
 JOIN t13 ON t11.l = t13.l
 JOIN t14 ON t12.m = t14.m
 JOIN t15 ON t13.n = t15.n;
-                           QUERY PLAN                           
-----------------------------------------------------------------
+                                 QUERY PLAN                                 
+----------------------------------------------------------------------------
  Aggregate
    ->  Hash Join
-         Hash Cond: (t7.h = t9.h)
+         Hash Cond: (t11.l = t13.l)
          ->  Hash Join
-               Hash Cond: (t8.i = t10.i)
+               Hash Cond: (t9.j = t11.j)
                ->  Hash Join
-                     Hash Cond: (t2.c = t4.c)
...
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/goo.out /Users/admin/pgsql/build/testrun/regress/regress/results/g...
--- /Users/admin/pgsql/src/test/regress/expected/goo.out	2026-01-21 06:27:21
+++ /Users/admin/pgsql/build/testrun/regress/regress/results/goo.out	2026-01-21 06:30:54
@@ -177,66 +177,66 @@
 JOIN t13 ON t11.l = t13.l
 JOIN t14 ON t12.m = t14.m
 JOIN t15 ON t13.n = t15.n;
-                           QUERY PLAN                           
-----------------------------------------------------------------
+                                 QUERY PLAN                                 
+----------------------------------------------------------------------------
  Aggregate
    ->  Hash Join
-         Hash Cond: (t7.h = t9.h)
+         Hash Cond: (t11.l = t13.l)
          ->  Hash Join
-               Hash Cond: (t8.i = t10.i)
+               Hash Cond: (t9.j = t11.j)
                ->  Hash Join
-                     Hash Cond: (t2.c = t4.c)
...
Linux - Debian Trixie - Meson
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/goo.out /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_upg...
--- /tmp/cirrus-ci-build/src/test/regress/expected/goo.out	2026-01-21 06:26:26.339952908 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_upgrade/data/results/goo.out	2026-01-21 06:28:46.903742958 +000...
@@ -177,66 +177,66 @@
 JOIN t13 ON t11.l = t13.l
 JOIN t14 ON t12.m = t14.m
 JOIN t15 ON t13.n = t15.n;
-                           QUERY PLAN                           
-----------------------------------------------------------------
+                                 QUERY PLAN                                 
+----------------------------------------------------------------------------
  Aggregate
    ->  Hash Join
-         Hash Cond: (t7.h = t9.h)
+         Hash Cond: (t11.l = t13.l)
          ->  Hash Join
-               Hash Cond: (t8.i = t10.i)
+               Hash Cond: (t9.j = t11.j)
                ->  Hash Join
-                     Hash Cond: (t2.c = t4.c)
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/goo.out /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_r...
--- /tmp/cirrus-ci-build/src/test/regress/expected/goo.out	2026-01-21 06:26:26.339952908 +0000
+++ /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_regress/data/results/goo.out	2026-01-21 06:30:15.757638974 +0...
@@ -177,66 +177,66 @@
 JOIN t13 ON t11.l = t13.l
 JOIN t14 ON t12.m = t14.m
 JOIN t15 ON t13.n = t15.n;
-                           QUERY PLAN                           
-----------------------------------------------------------------
+                                 QUERY PLAN                                 
+----------------------------------------------------------------------------
  Aggregate
    ->  Hash Join
-         Hash Cond: (t7.h = t9.h)
+         Hash Cond: (t11.l = t13.l)
          ->  Hash Join
-               Hash Cond: (t8.i = t10.i)
+               Hash Cond: (t9.j = t11.j)
                ->  Hash Join
-                     Hash Cond: (t2.c = t4.c)
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/goo.out /tmp/cirrus-ci-build/build/testrun/regress/regress/resul...
--- /tmp/cirrus-ci-build/src/test/regress/expected/goo.out	2026-01-21 06:26:26.339952908 +0000
+++ /tmp/cirrus-ci-build/build/testrun/regress/regress/results/goo.out	2026-01-21 06:28:42.919235924 +0000
@@ -177,66 +177,66 @@
 JOIN t13 ON t11.l = t13.l
 JOIN t14 ON t12.m = t14.m
 JOIN t15 ON t13.n = t15.n;
-                           QUERY PLAN                           
-----------------------------------------------------------------
+                                 QUERY PLAN                                 
+----------------------------------------------------------------------------
  Aggregate
    ->  Hash Join
-         Hash Cond: (t7.h = t9.h)
+         Hash Cond: (t11.l = t13.l)
          ->  Hash Join
-               Hash Cond: (t8.i = t10.i)
+               Hash Cond: (t9.j = t11.j)
                ->  Hash Join
-                     Hash Cond: (t2.c = t4.c)
...
FreeBSD - Meson
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/goo.out /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_upg...
--- /tmp/cirrus-ci-build/src/test/regress/expected/goo.out	2026-01-21 06:26:23.292557000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_upgrade/data/results/goo.out	2026-01-21 06:28:27.310556000 +000...
@@ -177,66 +177,66 @@
 JOIN t13 ON t11.l = t13.l
 JOIN t14 ON t12.m = t14.m
 JOIN t15 ON t13.n = t15.n;
-                           QUERY PLAN                           
-----------------------------------------------------------------
+                                 QUERY PLAN                                 
+----------------------------------------------------------------------------
  Aggregate
    ->  Hash Join
-         Hash Cond: (t7.h = t9.h)
+         Hash Cond: (t11.l = t13.l)
          ->  Hash Join
-               Hash Cond: (t8.i = t10.i)
+               Hash Cond: (t9.j = t11.j)
                ->  Hash Join
-                     Hash Cond: (t2.c = t4.c)
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/goo.out /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_r...
--- /tmp/cirrus-ci-build/src/test/regress/expected/goo.out	2026-01-21 06:26:23.292557000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_regress/data/results/goo.out	2026-01-21 06:29:47.691707000 +0...
@@ -177,66 +177,66 @@
 JOIN t13 ON t11.l = t13.l
 JOIN t14 ON t12.m = t14.m
 JOIN t15 ON t13.n = t15.n;
-                           QUERY PLAN                           
-----------------------------------------------------------------
+                                 QUERY PLAN                                 
+----------------------------------------------------------------------------
  Aggregate
    ->  Hash Join
-         Hash Cond: (t7.h = t9.h)
+         Hash Cond: (t11.l = t13.l)
          ->  Hash Join
-               Hash Cond: (t8.i = t10.i)
+               Hash Cond: (t9.j = t11.j)
                ->  Hash Join
-                     Hash Cond: (t2.c = t4.c)
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/goo.out /tmp/cirrus-ci-build/build/testrun/regress/regress/resul...
--- /tmp/cirrus-ci-build/src/test/regress/expected/goo.out	2026-01-21 06:26:23.292557000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/regress/regress/results/goo.out	2026-01-21 06:28:28.360670000 +0000
@@ -177,66 +177,66 @@
 JOIN t13 ON t11.l = t13.l
 JOIN t14 ON t12.m = t14.m
 JOIN t15 ON t13.n = t15.n;
-                           QUERY PLAN                           
-----------------------------------------------------------------
+                                 QUERY PLAN                                 
+----------------------------------------------------------------------------
  Aggregate
    ->  Hash Join
-         Hash Cond: (t7.h = t9.h)
+         Hash Cond: (t11.l = t13.l)
          ->  Hash Join
-               Hash Cond: (t8.i = t10.i)
+               Hash Cond: (t9.j = t11.j)
                ->  Hash Join
-                     Hash Cond: (t2.c = t4.c)
...
NetBSD - Meson
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/goo.out /home/postgres/postgres/build/testrun/pg_upgrade/002_...
--- /home/postgres/postgres/src/test/regress/expected/goo.out	2026-01-21 06:26:53.797613141 +0000
+++ /home/postgres/postgres/build/testrun/pg_upgrade/002_pg_upgrade/data/results/goo.out	2026-01-21 06:28:37.738782205 +...
@@ -177,66 +177,66 @@
 JOIN t13 ON t11.l = t13.l
 JOIN t14 ON t12.m = t14.m
 JOIN t15 ON t13.n = t15.n;
-                           QUERY PLAN                           
-----------------------------------------------------------------
+                                 QUERY PLAN                                 
+----------------------------------------------------------------------------
  Aggregate
    ->  Hash Join
-         Hash Cond: (t7.h = t9.h)
+         Hash Cond: (t11.l = t13.l)
          ->  Hash Join
-               Hash Cond: (t8.i = t10.i)
+               Hash Cond: (t9.j = t11.j)
                ->  Hash Join
-                     Hash Cond: (t2.c = t4.c)
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/goo.out /home/postgres/postgres/build/testrun/recovery/027_st...
--- /home/postgres/postgres/src/test/regress/expected/goo.out	2026-01-21 06:26:53.797613141 +0000
+++ /home/postgres/postgres/build/testrun/recovery/027_stream_regress/data/results/goo.out	2026-01-21 06:29:22.774009287...
@@ -177,66 +177,66 @@
 JOIN t13 ON t11.l = t13.l
 JOIN t14 ON t12.m = t14.m
 JOIN t15 ON t13.n = t15.n;
-                           QUERY PLAN                           
-----------------------------------------------------------------
+                                 QUERY PLAN                                 
+----------------------------------------------------------------------------
  Aggregate
    ->  Hash Join
-         Hash Cond: (t7.h = t9.h)
+         Hash Cond: (t11.l = t13.l)
          ->  Hash Join
-               Hash Cond: (t8.i = t10.i)
+               Hash Cond: (t9.j = t11.j)
                ->  Hash Join
-                     Hash Cond: (t2.c = t4.c)
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/goo.out /home/postgres/postgres/build/testrun/regress/regress...
--- /home/postgres/postgres/src/test/regress/expected/goo.out	2026-01-21 06:26:53.797613141 +0000
+++ /home/postgres/postgres/build/testrun/regress/regress/results/goo.out	2026-01-21 06:28:34.635263784 +0000
@@ -177,66 +177,66 @@
 JOIN t13 ON t11.l = t13.l
 JOIN t14 ON t12.m = t14.m
 JOIN t15 ON t13.n = t15.n;
-                           QUERY PLAN                           
-----------------------------------------------------------------
+                                 QUERY PLAN                                 
+----------------------------------------------------------------------------
  Aggregate
    ->  Hash Join
-         Hash Cond: (t7.h = t9.h)
+         Hash Cond: (t11.l = t13.l)
          ->  Hash Join
-               Hash Cond: (t8.i = t10.i)
+               Hash Cond: (t9.j = t11.j)
                ->  Hash Join
-                     Hash Cond: (t2.c = t4.c)
...
OpenBSD - Meson
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/goo.out /home/postgres/postgres/build/testrun/pg_upgrade/002_...
--- /home/postgres/postgres/src/test/regress/expected/goo.out	Wed Jan 21 06:26:38 2026
+++ /home/postgres/postgres/build/testrun/pg_upgrade/002_pg_upgrade/data/results/goo.out	Wed Jan 21 06:29:16 2026
@@ -177,66 +177,66 @@
 JOIN t13 ON t11.l = t13.l
 JOIN t14 ON t12.m = t14.m
 JOIN t15 ON t13.n = t15.n;
-                           QUERY PLAN                           
-----------------------------------------------------------------
+                                 QUERY PLAN                                 
+----------------------------------------------------------------------------
  Aggregate
    ->  Hash Join
-         Hash Cond: (t7.h = t9.h)
+         Hash Cond: (t11.l = t13.l)
          ->  Hash Join
-               Hash Cond: (t8.i = t10.i)
+               Hash Cond: (t9.j = t11.j)
                ->  Hash Join
-                     Hash Cond: (t2.c = t4.c)
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/goo.out /home/postgres/postgres/build/testrun/recovery/027_st...
--- /home/postgres/postgres/src/test/regress/expected/goo.out	Wed Jan 21 06:26:38 2026
+++ /home/postgres/postgres/build/testrun/recovery/027_stream_regress/data/results/goo.out	Wed Jan 21 06:31:23 2026
@@ -177,66 +177,66 @@
 JOIN t13 ON t11.l = t13.l
 JOIN t14 ON t12.m = t14.m
 JOIN t15 ON t13.n = t15.n;
-                           QUERY PLAN                           
-----------------------------------------------------------------
+                                 QUERY PLAN                                 
+----------------------------------------------------------------------------
  Aggregate
    ->  Hash Join
-         Hash Cond: (t7.h = t9.h)
+         Hash Cond: (t11.l = t13.l)
          ->  Hash Join
-               Hash Cond: (t8.i = t10.i)
+               Hash Cond: (t9.j = t11.j)
                ->  Hash Join
-                     Hash Cond: (t2.c = t4.c)
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/goo.out /home/postgres/postgres/build/testrun/regress/regress...
--- /home/postgres/postgres/src/test/regress/expected/goo.out	Wed Jan 21 06:26:38 2026
+++ /home/postgres/postgres/build/testrun/regress/regress/results/goo.out	Wed Jan 21 06:29:10 2026
@@ -177,66 +177,66 @@
 JOIN t13 ON t11.l = t13.l
 JOIN t14 ON t12.m = t14.m
 JOIN t15 ON t13.n = t15.n;
-                           QUERY PLAN                           
-----------------------------------------------------------------
+                                 QUERY PLAN                                 
+----------------------------------------------------------------------------
  Aggregate
    ->  Hash Join
-         Hash Cond: (t7.h = t9.h)
+         Hash Cond: (t11.l = t13.l)
          ->  Hash Join
-               Hash Cond: (t8.i = t10.i)
+               Hash Cond: (t9.j = t11.j)
                ->  Hash Join
-                     Hash Cond: (t2.c = t4.c)
...
Linux - Debian Trixie - Autoconf
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/goo.out /tmp/cirrus-ci-build/src/bin/pg_upgrade/tmp_check/result...
--- /tmp/cirrus-ci-build/src/test/regress/expected/goo.out	2026-01-21 06:26:39.881267165 +0000
+++ /tmp/cirrus-ci-build/src/bin/pg_upgrade/tmp_check/results/goo.out	2026-01-21 06:32:22.447897171 +0000
@@ -177,66 +177,66 @@
 JOIN t13 ON t11.l = t13.l
 JOIN t14 ON t12.m = t14.m
 JOIN t15 ON t13.n = t15.n;
-                           QUERY PLAN                           
-----------------------------------------------------------------
+                                 QUERY PLAN                                 
+----------------------------------------------------------------------------
  Aggregate
    ->  Hash Join
-         Hash Cond: (t7.h = t9.h)
+         Hash Cond: (t11.l = t13.l)
          ->  Hash Join
-               Hash Cond: (t8.i = t10.i)
+               Hash Cond: (t9.j = t11.j)
                ->  Hash Join
-                     Hash Cond: (t2.c = t4.c)
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/goo.out /tmp/cirrus-ci-build/src/test/recovery/tmp_check/results...
--- /tmp/cirrus-ci-build/src/test/regress/expected/goo.out	2026-01-21 06:26:39.881267165 +0000
+++ /tmp/cirrus-ci-build/src/test/recovery/tmp_check/results/goo.out	2026-01-21 06:33:43.792359740 +0000
@@ -177,66 +177,66 @@
 JOIN t13 ON t11.l = t13.l
 JOIN t14 ON t12.m = t14.m
 JOIN t15 ON t13.n = t15.n;
-                           QUERY PLAN                           
-----------------------------------------------------------------
+                                 QUERY PLAN                                 
+----------------------------------------------------------------------------
  Aggregate
    ->  Hash Join
-         Hash Cond: (t7.h = t9.h)
+         Hash Cond: (t11.l = t13.l)
          ->  Hash Join
-               Hash Cond: (t8.i = t10.i)
+               Hash Cond: (t9.j = t11.j)
                ->  Hash Join
-                     Hash Cond: (t2.c = t4.c)
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/goo.out /tmp/cirrus-ci-build/src/test/regress/results/goo.out
--- /tmp/cirrus-ci-build/src/test/regress/expected/goo.out	2026-01-21 06:26:39.881267165 +0000
+++ /tmp/cirrus-ci-build/src/test/regress/results/goo.out	2026-01-21 06:30:09.532099208 +0000
@@ -177,66 +177,66 @@
 JOIN t13 ON t11.l = t13.l
 JOIN t14 ON t12.m = t14.m
 JOIN t15 ON t13.n = t15.n;
-                           QUERY PLAN                           
-----------------------------------------------------------------
+                                 QUERY PLAN                                 
+----------------------------------------------------------------------------
  Aggregate
    ->  Hash Join
-         Hash Cond: (t7.h = t9.h)
+         Hash Cond: (t11.l = t13.l)
          ->  Hash Join
-               Hash Cond: (t8.i = t10.i)
+               Hash Cond: (t9.j = t11.j)
                ->  Hash Join
-                     Hash Cond: (t2.c = t4.c)
...
57/6299 New grouping strategy - Index Aggregate
Windows - Server 2022, MinGW64 - Meson
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/subselect.out C:/cirrus/build/testrun/pg_upgrade/002_pg...
--- C:/cirrus/src/test/regress/expected/subselect.out	2026-01-21 06:10:23.858082900 +0000
+++ C:/cirrus/build/testrun/pg_upgrade/002_pg_upgrade/data/results/subselect.out	2026-01-21 06:17:35.902652200 +0000
@@ -1964,23 +1964,20 @@
 select * from
   (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss
   where ss.v;
-                         QUERY PLAN                         
-------------------------------------------------------------
+                      QUERY PLAN                      
+------------------------------------------------------
  Subquery Scan on ss
    Output: ss.v, ss.count
    Filter: ss.v
-   ->  GroupAggregate
+   ->  IndexAggregate
          Output: (tattle(3, tenk1.ten)), count(*)
-         Group Key: (tattle(3, tenk1.ten))
-         ->  Sort
-               Output: (tattle(3, tenk1.ten))
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/subselect.out C:/cirrus/build/testrun/recovery/027_stre...
--- C:/cirrus/src/test/regress/expected/subselect.out	2026-01-21 06:10:23.858082900 +0000
+++ C:/cirrus/build/testrun/recovery/027_stream_regress/data/results/subselect.out	2026-01-21 06:21:06.802445800 +0000
@@ -1964,23 +1964,20 @@
 select * from
   (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss
   where ss.v;
-                         QUERY PLAN                         
-------------------------------------------------------------
+                      QUERY PLAN                      
+------------------------------------------------------
  Subquery Scan on ss
    Output: ss.v, ss.count
    Filter: ss.v
-   ->  GroupAggregate
+   ->  IndexAggregate
          Output: (tattle(3, tenk1.ten)), count(*)
-         Group Key: (tattle(3, tenk1.ten))
-         ->  Sort
-               Output: (tattle(3, tenk1.ten))
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/subselect.out C:/cirrus/build/testrun/regress/regress/r...
--- C:/cirrus/src/test/regress/expected/subselect.out	2026-01-21 06:10:23.858082900 +0000
+++ C:/cirrus/build/testrun/regress/regress/results/subselect.out	2026-01-21 06:17:32.969060600 +0000
@@ -1964,23 +1964,20 @@
 select * from
   (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss
   where ss.v;
-                         QUERY PLAN                         
-------------------------------------------------------------
+                      QUERY PLAN                      
+------------------------------------------------------
  Subquery Scan on ss
    Output: ss.v, ss.count
    Filter: ss.v
-   ->  GroupAggregate
+   ->  IndexAggregate
          Output: (tattle(3, tenk1.ten)), count(*)
-         Group Key: (tattle(3, tenk1.ten))
-         ->  Sort
-               Output: (tattle(3, tenk1.ten))
...
macOS - Sequoia - Meson
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/subselect.out /Users/admin/pgsql/build/testrun/pg_upgrade/002_pg_u...
--- /Users/admin/pgsql/src/test/regress/expected/subselect.out	2026-01-21 06:10:17
+++ /Users/admin/pgsql/build/testrun/pg_upgrade/002_pg_upgrade/data/results/subselect.out	2026-01-21 06:14:44
@@ -1964,23 +1964,20 @@
 select * from
   (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss
   where ss.v;
-                         QUERY PLAN                         
-------------------------------------------------------------
+                      QUERY PLAN                      
+------------------------------------------------------
  Subquery Scan on ss
    Output: ss.v, ss.count
    Filter: ss.v
-   ->  GroupAggregate
+   ->  IndexAggregate
          Output: (tattle(3, tenk1.ten)), count(*)
-         Group Key: (tattle(3, tenk1.ten))
-         ->  Sort
-               Output: (tattle(3, tenk1.ten))
...
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/subselect.out /Users/admin/pgsql/build/testrun/recovery/027_stream...
--- /Users/admin/pgsql/src/test/regress/expected/subselect.out	2026-01-21 06:10:17
+++ /Users/admin/pgsql/build/testrun/recovery/027_stream_regress/data/results/subselect.out	2026-01-21 06:16:13
@@ -1964,23 +1964,20 @@
 select * from
   (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss
   where ss.v;
-                         QUERY PLAN                         
-------------------------------------------------------------
+                      QUERY PLAN                      
+------------------------------------------------------
  Subquery Scan on ss
    Output: ss.v, ss.count
    Filter: ss.v
-   ->  GroupAggregate
+   ->  IndexAggregate
          Output: (tattle(3, tenk1.ten)), count(*)
-         Group Key: (tattle(3, tenk1.ten))
-         ->  Sort
-               Output: (tattle(3, tenk1.ten))
...
regress
diff -U3 /Users/admin/pgsql/src/test/regress/expected/subselect.out /Users/admin/pgsql/build/testrun/regress/regress/res...
--- /Users/admin/pgsql/src/test/regress/expected/subselect.out	2026-01-21 06:10:17
+++ /Users/admin/pgsql/build/testrun/regress/regress/results/subselect.out	2026-01-21 06:14:43
@@ -1964,23 +1964,20 @@
 select * from
   (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss
   where ss.v;
-                         QUERY PLAN                         
-------------------------------------------------------------
+                      QUERY PLAN                      
+------------------------------------------------------
  Subquery Scan on ss
    Output: ss.v, ss.count
    Filter: ss.v
-   ->  GroupAggregate
+   ->  IndexAggregate
          Output: (tattle(3, tenk1.ten)), count(*)
-         Group Key: (tattle(3, tenk1.ten))
-         ->  Sort
-               Output: (tattle(3, tenk1.ten))
...
Windows - Server 2022, VS 2019 - Meson & ninja
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/subselect.out C:/cirrus/build/testrun/pg_upgrade/002_pg...
--- C:/cirrus/src/test/regress/expected/subselect.out	2026-01-21 06:10:10.756702300 +0000
+++ C:/cirrus/build/testrun/pg_upgrade/002_pg_upgrade/data/results/subselect.out	2026-01-21 06:13:25.137130000 +0000
@@ -1964,23 +1964,20 @@
 select * from
   (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss
   where ss.v;
-                         QUERY PLAN                         
-------------------------------------------------------------
+                      QUERY PLAN                      
+------------------------------------------------------
  Subquery Scan on ss
    Output: ss.v, ss.count
    Filter: ss.v
-   ->  GroupAggregate
+   ->  IndexAggregate
          Output: (tattle(3, tenk1.ten)), count(*)
-         Group Key: (tattle(3, tenk1.ten))
-         ->  Sort
-               Output: (tattle(3, tenk1.ten))
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/subselect.out C:/cirrus/build/testrun/recovery/027_stre...
--- C:/cirrus/src/test/regress/expected/subselect.out	2026-01-21 06:10:10.756702300 +0000
+++ C:/cirrus/build/testrun/recovery/027_stream_regress/data/results/subselect.out	2026-01-21 06:16:29.660625300 +0000
@@ -1964,23 +1964,20 @@
 select * from
   (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss
   where ss.v;
-                         QUERY PLAN                         
-------------------------------------------------------------
+                      QUERY PLAN                      
+------------------------------------------------------
  Subquery Scan on ss
    Output: ss.v, ss.count
    Filter: ss.v
-   ->  GroupAggregate
+   ->  IndexAggregate
          Output: (tattle(3, tenk1.ten)), count(*)
-         Group Key: (tattle(3, tenk1.ten))
-         ->  Sort
-               Output: (tattle(3, tenk1.ten))
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/subselect.out C:/cirrus/build/testrun/regress/regress/r...
--- C:/cirrus/src/test/regress/expected/subselect.out	2026-01-21 06:10:10.756702300 +0000
+++ C:/cirrus/build/testrun/regress/regress/results/subselect.out	2026-01-21 06:13:18.674240600 +0000
@@ -1964,23 +1964,20 @@
 select * from
   (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss
   where ss.v;
-                         QUERY PLAN                         
-------------------------------------------------------------
+                      QUERY PLAN                      
+------------------------------------------------------
  Subquery Scan on ss
    Output: ss.v, ss.count
    Filter: ss.v
-   ->  GroupAggregate
+   ->  IndexAggregate
          Output: (tattle(3, tenk1.ten)), count(*)
-         Group Key: (tattle(3, tenk1.ten))
-         ->  Sort
-               Output: (tattle(3, tenk1.ten))
...
Linux - Debian Trixie - Meson
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/subselect.out /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_...
--- /tmp/cirrus-ci-build/src/test/regress/expected/subselect.out	2026-01-21 06:10:09.164276521 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_upgrade/data/results/subselect.out	2026-01-21 06:14:48.08427397...
@@ -1964,23 +1964,20 @@
 select * from
   (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss
   where ss.v;
-                         QUERY PLAN                         
-------------------------------------------------------------
+                      QUERY PLAN                      
+------------------------------------------------------
  Subquery Scan on ss
    Output: ss.v, ss.count
    Filter: ss.v
-   ->  GroupAggregate
+   ->  IndexAggregate
          Output: (tattle(3, tenk1.ten)), count(*)
-         Group Key: (tattle(3, tenk1.ten))
-         ->  Sort
-               Output: (tattle(3, tenk1.ten))
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/subselect.out /tmp/cirrus-ci-build/build/testrun/recovery/027_st...
--- /tmp/cirrus-ci-build/src/test/regress/expected/subselect.out	2026-01-21 06:10:09.164276521 +0000
+++ /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_regress/data/results/subselect.out	2026-01-21 06:16:13.504725...
@@ -1964,23 +1964,20 @@
 select * from
   (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss
   where ss.v;
-                         QUERY PLAN                         
-------------------------------------------------------------
+                      QUERY PLAN                      
+------------------------------------------------------
  Subquery Scan on ss
    Output: ss.v, ss.count
    Filter: ss.v
-   ->  GroupAggregate
+   ->  IndexAggregate
          Output: (tattle(3, tenk1.ten)), count(*)
-         Group Key: (tattle(3, tenk1.ten))
-         ->  Sort
-               Output: (tattle(3, tenk1.ten))
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/subselect.out /tmp/cirrus-ci-build/build/testrun/regress/regress...
--- /tmp/cirrus-ci-build/src/test/regress/expected/subselect.out	2026-01-21 06:10:09.164276521 +0000
+++ /tmp/cirrus-ci-build/build/testrun/regress/regress/results/subselect.out	2026-01-21 06:14:48.448276465 +0000
@@ -1964,23 +1964,20 @@
 select * from
   (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss
   where ss.v;
-                         QUERY PLAN                         
-------------------------------------------------------------
+                      QUERY PLAN                      
+------------------------------------------------------
  Subquery Scan on ss
    Output: ss.v, ss.count
    Filter: ss.v
-   ->  GroupAggregate
+   ->  IndexAggregate
          Output: (tattle(3, tenk1.ten)), count(*)
-         Group Key: (tattle(3, tenk1.ten))
-         ->  Sort
-               Output: (tattle(3, tenk1.ten))
...
OpenBSD - Meson
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/subselect.out /home/postgres/postgres/build/testrun/pg_upgrad...
--- /home/postgres/postgres/src/test/regress/expected/subselect.out	Wed Jan 21 06:10:18 2026
+++ /home/postgres/postgres/build/testrun/pg_upgrade/002_pg_upgrade/data/results/subselect.out	Wed Jan 21 06:14:21 2026
@@ -1964,23 +1964,20 @@
 select * from
   (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss
   where ss.v;
-                         QUERY PLAN                         
-------------------------------------------------------------
+                      QUERY PLAN                      
+------------------------------------------------------
  Subquery Scan on ss
    Output: ss.v, ss.count
    Filter: ss.v
-   ->  GroupAggregate
+   ->  IndexAggregate
          Output: (tattle(3, tenk1.ten)), count(*)
-         Group Key: (tattle(3, tenk1.ten))
-         ->  Sort
-               Output: (tattle(3, tenk1.ten))
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/subselect.out /home/postgres/postgres/build/testrun/recovery/...
--- /home/postgres/postgres/src/test/regress/expected/subselect.out	Wed Jan 21 06:10:18 2026
+++ /home/postgres/postgres/build/testrun/recovery/027_stream_regress/data/results/subselect.out	Wed Jan 21 06:16:16 202...
@@ -1964,23 +1964,20 @@
 select * from
   (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss
   where ss.v;
-                         QUERY PLAN                         
-------------------------------------------------------------
+                      QUERY PLAN                      
+------------------------------------------------------
  Subquery Scan on ss
    Output: ss.v, ss.count
    Filter: ss.v
-   ->  GroupAggregate
+   ->  IndexAggregate
          Output: (tattle(3, tenk1.ten)), count(*)
-         Group Key: (tattle(3, tenk1.ten))
-         ->  Sort
-               Output: (tattle(3, tenk1.ten))
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/subselect.out /home/postgres/postgres/build/testrun/regress/r...
--- /home/postgres/postgres/src/test/regress/expected/subselect.out	Wed Jan 21 06:10:18 2026
+++ /home/postgres/postgres/build/testrun/regress/regress/results/subselect.out	Wed Jan 21 06:14:15 2026
@@ -1964,23 +1964,20 @@
 select * from
   (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss
   where ss.v;
-                         QUERY PLAN                         
-------------------------------------------------------------
+                      QUERY PLAN                      
+------------------------------------------------------
  Subquery Scan on ss
    Output: ss.v, ss.count
    Filter: ss.v
-   ->  GroupAggregate
+   ->  IndexAggregate
          Output: (tattle(3, tenk1.ten)), count(*)
-         Group Key: (tattle(3, tenk1.ten))
-         ->  Sort
-               Output: (tattle(3, tenk1.ten))
...
FreeBSD - Meson
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/subselect.out /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_...
--- /tmp/cirrus-ci-build/src/test/regress/expected/subselect.out	2026-01-21 06:10:07.683584000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pg_upgrade/002_pg_upgrade/data/results/subselect.out	2026-01-21 06:13:04.15858800...
@@ -1964,23 +1964,20 @@
 select * from
   (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss
   where ss.v;
-                         QUERY PLAN                         
-------------------------------------------------------------
+                      QUERY PLAN                      
+------------------------------------------------------
  Subquery Scan on ss
    Output: ss.v, ss.count
    Filter: ss.v
-   ->  GroupAggregate
+   ->  IndexAggregate
          Output: (tattle(3, tenk1.ten)), count(*)
-         Group Key: (tattle(3, tenk1.ten))
-         ->  Sort
-               Output: (tattle(3, tenk1.ten))
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/subselect.out /tmp/cirrus-ci-build/build/testrun/recovery/027_st...
--- /tmp/cirrus-ci-build/src/test/regress/expected/subselect.out	2026-01-21 06:10:07.683584000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/recovery/027_stream_regress/data/results/subselect.out	2026-01-21 06:14:25.759988...
@@ -1964,23 +1964,20 @@
 select * from
   (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss
   where ss.v;
-                         QUERY PLAN                         
-------------------------------------------------------------
+                      QUERY PLAN                      
+------------------------------------------------------
  Subquery Scan on ss
    Output: ss.v, ss.count
    Filter: ss.v
-   ->  GroupAggregate
+   ->  IndexAggregate
          Output: (tattle(3, tenk1.ten)), count(*)
-         Group Key: (tattle(3, tenk1.ten))
-         ->  Sort
-               Output: (tattle(3, tenk1.ten))
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/subselect.out /tmp/cirrus-ci-build/build/testrun/regress/regress...
--- /tmp/cirrus-ci-build/src/test/regress/expected/subselect.out	2026-01-21 06:10:07.683584000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/regress/regress/results/subselect.out	2026-01-21 06:13:01.698640000 +0000
@@ -1964,23 +1964,20 @@
 select * from
   (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss
   where ss.v;
-                         QUERY PLAN                         
-------------------------------------------------------------
+                      QUERY PLAN                      
+------------------------------------------------------
  Subquery Scan on ss
    Output: ss.v, ss.count
    Filter: ss.v
-   ->  GroupAggregate
+   ->  IndexAggregate
          Output: (tattle(3, tenk1.ten)), count(*)
-         Group Key: (tattle(3, tenk1.ten))
-         ->  Sort
-               Output: (tattle(3, tenk1.ten))
...
Linux - Debian Trixie - Autoconf
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/subselect.out /tmp/cirrus-ci-build/src/bin/pg_upgrade/tmp_check/...
--- /tmp/cirrus-ci-build/src/test/regress/expected/subselect.out	2026-01-21 06:10:20.601892332 +0000
+++ /tmp/cirrus-ci-build/src/bin/pg_upgrade/tmp_check/results/subselect.out	2026-01-21 06:18:40.937578790 +0000
@@ -1964,23 +1964,20 @@
 select * from
   (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss
   where ss.v;
-                         QUERY PLAN                         
-------------------------------------------------------------
+                      QUERY PLAN                      
+------------------------------------------------------
  Subquery Scan on ss
    Output: ss.v, ss.count
    Filter: ss.v
-   ->  GroupAggregate
+   ->  IndexAggregate
          Output: (tattle(3, tenk1.ten)), count(*)
-         Group Key: (tattle(3, tenk1.ten))
-         ->  Sort
-               Output: (tattle(3, tenk1.ten))
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/subselect.out /tmp/cirrus-ci-build/src/test/recovery/tmp_check/r...
--- /tmp/cirrus-ci-build/src/test/regress/expected/subselect.out	2026-01-21 06:10:20.601892332 +0000
+++ /tmp/cirrus-ci-build/src/test/recovery/tmp_check/results/subselect.out	2026-01-21 06:20:42.373957754 +0000
@@ -1964,23 +1964,20 @@
 select * from
   (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss
   where ss.v;
-                         QUERY PLAN                         
-------------------------------------------------------------
+                      QUERY PLAN                      
+------------------------------------------------------
  Subquery Scan on ss
    Output: ss.v, ss.count
    Filter: ss.v
-   ->  GroupAggregate
+   ->  IndexAggregate
          Output: (tattle(3, tenk1.ten)), count(*)
-         Group Key: (tattle(3, tenk1.ten))
-         ->  Sort
-               Output: (tattle(3, tenk1.ten))
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/subselect.out /tmp/cirrus-ci-build/src/test/regress/results/subs...
--- /tmp/cirrus-ci-build/src/test/regress/expected/subselect.out	2026-01-21 06:10:20.601892332 +0000
+++ /tmp/cirrus-ci-build/src/test/regress/results/subselect.out	2026-01-21 06:16:20.262325450 +0000
@@ -1964,23 +1964,20 @@
 select * from
   (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss
   where ss.v;
-                         QUERY PLAN                         
-------------------------------------------------------------
+                      QUERY PLAN                      
+------------------------------------------------------
  Subquery Scan on ss
    Output: ss.v, ss.count
    Filter: ss.v
-   ->  GroupAggregate
+   ->  IndexAggregate
          Output: (tattle(3, tenk1.ten)), count(*)
-         Group Key: (tattle(3, tenk1.ten))
-         ->  Sort
-               Output: (tattle(3, tenk1.ten))
...
NetBSD - Meson
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/subselect.out /home/postgres/postgres/build/testrun/pg_upgrad...
--- /home/postgres/postgres/src/test/regress/expected/subselect.out	2026-01-21 06:10:34.736926331 +0000
+++ /home/postgres/postgres/build/testrun/pg_upgrade/002_pg_upgrade/data/results/subselect.out	2026-01-21 06:13:33.61073...
@@ -1964,23 +1964,20 @@
 select * from
   (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss
   where ss.v;
-                         QUERY PLAN                         
-------------------------------------------------------------
+                      QUERY PLAN                      
+------------------------------------------------------
  Subquery Scan on ss
    Output: ss.v, ss.count
    Filter: ss.v
-   ->  GroupAggregate
+   ->  IndexAggregate
          Output: (tattle(3, tenk1.ten)), count(*)
-         Group Key: (tattle(3, tenk1.ten))
-         ->  Sort
-               Output: (tattle(3, tenk1.ten))
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/subselect.out /home/postgres/postgres/build/testrun/recovery/...
--- /home/postgres/postgres/src/test/regress/expected/subselect.out	2026-01-21 06:10:34.736926331 +0000
+++ /home/postgres/postgres/build/testrun/recovery/027_stream_regress/data/results/subselect.out	2026-01-21 06:14:15.909...
@@ -1964,23 +1964,20 @@
 select * from
   (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss
   where ss.v;
-                         QUERY PLAN                         
-------------------------------------------------------------
+                      QUERY PLAN                      
+------------------------------------------------------
  Subquery Scan on ss
    Output: ss.v, ss.count
    Filter: ss.v
-   ->  GroupAggregate
+   ->  IndexAggregate
          Output: (tattle(3, tenk1.ten)), count(*)
-         Group Key: (tattle(3, tenk1.ten))
-         ->  Sort
-               Output: (tattle(3, tenk1.ten))
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/subselect.out /home/postgres/postgres/build/testrun/regress/r...
--- /home/postgres/postgres/src/test/regress/expected/subselect.out	2026-01-21 06:10:34.736926331 +0000
+++ /home/postgres/postgres/build/testrun/regress/regress/results/subselect.out	2026-01-21 06:13:29.890606082 +0000
@@ -1964,23 +1964,20 @@
 select * from
   (select tattle(3, ten) as v, count(*) from tenk1 where unique1 < 3 group by 1) ss
   where ss.v;
-                         QUERY PLAN                         
-------------------------------------------------------------
+                      QUERY PLAN                      
+------------------------------------------------------
  Subquery Scan on ss
    Output: ss.v, ss.count
    Filter: ss.v
-   ->  GroupAggregate
+   ->  IndexAggregate
          Output: (tattle(3, tenk1.ten)), count(*)
-         Group Key: (tattle(3, tenk1.ten))
-         ->  Sort
-               Output: (tattle(3, tenk1.ten))
...
58/6391 Use CASEFOLD() internally rather than LOWER()
Windows - Server 2022, MinGW64 - Meson
regress
diff --strip-trailing-cr -U3 C:/cirrus/contrib/citext/expected/create_index_acl.out C:/cirrus/build/testrun/citext/regre...
--- C:/cirrus/contrib/citext/expected/create_index_acl.out	2026-01-19 10:03:31.553929900 +0000
+++ C:/cirrus/build/testrun/citext/regress/results/create_index_acl.out	2026-01-19 10:11:39.383376800 +0000
@@ -57,21 +57,26 @@
   WHERE (s.index_row_if(y));
 -- Make the table nonempty.
 INSERT INTO s.x VALUES ('foo'), ('bar');
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
 -- If the INSERT runs the planner on index expressions, a search_path change
 -- survives.  As of 2022-06, the INSERT reuses a cached plan.  It does so even
 -- under debug_discard_caches, since each index is new-in-transaction.  If
 -- future work changes a cache lifecycle, this RESET may become necessary.
 RESET search_path;
+ERROR:  current transaction is aborted, commands ignored until end of transaction block
 -- For a nonempty table, owner needs permissions throughout ii_Expressions.
 GRANT EXECUTE ON FUNCTION s.index_this_expr TO regress_minimal;
+ERROR:  current transaction is aborted, commands ignored until end of transaction block
 CREATE UNIQUE INDEX u2rows ON s.x USING btree
   ((s.index_this_expr(y, s.const())) COLLATE s.coll s.citext_pattern_ops)
   TABLESPACE regress_create_idx_tblspace
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/contrib/dict_xsyn/expected/dict_xsyn.out C:/cirrus/build/testrun/dict_xsyn/regres...
--- C:/cirrus/contrib/dict_xsyn/expected/dict_xsyn.out	2026-01-19 10:03:31.609579100 +0000
+++ C:/cirrus/build/testrun/dict_xsyn/regress/results/dict_xsyn.out	2026-01-19 10:11:43.844791400 +0000
@@ -1,11 +1,14 @@
 CREATE EXTENSION dict_xsyn;
 -- default configuration - match first word and return it among with all synonyms
 ALTER TEXT SEARCH DICTIONARY xsyn (RULES='xsyn_sample', KEEPORIG=true, MATCHORIG=true, KEEPSYNONYMS=true, MATCHSYNONYMS...
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
+CONTEXT:  line 1 of configuration file "C:/cirrus/build/tmp_install/usr/local/pgsql/share/tsearch_data/xsyn_sample.rule...
+"
 --lexize
 SELECT ts_lexize('xsyn', 'supernova');
-        ts_lexize         
---------------------------
- {supernova,sn,sne,1987a}
+ ts_lexize 
+-----------
+ 
 (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-01-19 10:03:32.046112800 +0000
+++ C:/cirrus/build/testrun/postgres_fdw/regress/results/postgres_fdw.out	2026-01-19 10:12:11.790109600 +0000
@@ -1206,11 +1206,7 @@
 
 SELECT c1, to_tsvector('custom_search'::regconfig, c3) FROM ft1
 WHERE c1 = 642 AND length(to_tsvector('custom_search'::regconfig, c3)) > 0;
- c1  | to_tsvector 
------+-------------
- 642 | '00642':1
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
 -- but if it's in a shippable extension, it can be shipped
 ALTER EXTENSION postgres_fdw ADD TEXT SEARCH CONFIGURATION public.custom_search;
 -- however, that doesn't flush the shippability cache, so do a quick reconnect
@@ -1227,11 +1223,8 @@
 
 SELECT c1, to_tsvector('custom_search'::regconfig, c3) FROM ft1
 WHERE c1 = 642 AND length(to_tsvector('custom_search'::regconfig, c3)) > 0;
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/strings.out C:/cirrus/build/testrun/recovery/027_stream...
--- C:/cirrus/src/test/regress/expected/strings.out	2026-01-19 10:03:36.533928400 +0000
+++ C:/cirrus/build/testrun/recovery/027_stream_regress/data/results/strings.out	2026-01-19 10:09:16.736329100 +0000
@@ -1869,53 +1869,21 @@
 -- Be sure to form every test as an ILIKE/NOT ILIKE pair.
 --
 SELECT 'hawkeye' ILIKE 'h%' AS "true";
- true 
-------
- t
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
 SELECT 'hawkeye' NOT ILIKE 'h%' AS "false";
- false 
--------
- f
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/strings.out C:/cirrus/build/testrun/regress/regress/res...
--- C:/cirrus/src/test/regress/expected/strings.out	2026-01-19 10:03:36.533928400 +0000
+++ C:/cirrus/build/testrun/regress/regress/results/strings.out	2026-01-19 10:06:05.770940400 +0000
@@ -1869,53 +1869,21 @@
 -- Be sure to form every test as an ILIKE/NOT ILIKE pair.
 --
 SELECT 'hawkeye' ILIKE 'h%' AS "true";
- true 
-------
- t
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
 SELECT 'hawkeye' NOT ILIKE 'h%' AS "false";
- false 
--------
- f
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/modules/test_parser/expected/test_parser.out C:/cirrus/build/testrun/tes...
--- C:/cirrus/src/test/modules/test_parser/expected/test_parser.out	2026-01-19 10:03:36.193076600 +0000
+++ C:/cirrus/build/testrun/test_parser/regress/results/test_parser.out	2026-01-19 10:12:33.265716300 +0000
@@ -24,21 +24,9 @@
 (15 rows)
 
 SELECT to_tsvector('testcfg','That''s my first own parser');
-                   to_tsvector                   
--------------------------------------------------
- 'first':3 'my':2 'own':4 'parser':5 'that''s':1
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
 SELECT to_tsquery('testcfg', 'star');
- to_tsquery 
-------------
- 'star'
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
...
Windows - Server 2022, VS 2019 - Meson & ninja
regress
diff --strip-trailing-cr -U3 C:/cirrus/contrib/citext/expected/create_index_acl.out C:/cirrus/build/testrun/citext/regre...
--- C:/cirrus/contrib/citext/expected/create_index_acl.out	2026-01-19 10:03:24.464914700 +0000
+++ C:/cirrus/build/testrun/citext/regress/results/create_index_acl.out	2026-01-19 10:11:37.516614900 +0000
@@ -57,21 +57,26 @@
   WHERE (s.index_row_if(y));
 -- Make the table nonempty.
 INSERT INTO s.x VALUES ('foo'), ('bar');
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
 -- If the INSERT runs the planner on index expressions, a search_path change
 -- survives.  As of 2022-06, the INSERT reuses a cached plan.  It does so even
 -- under debug_discard_caches, since each index is new-in-transaction.  If
 -- future work changes a cache lifecycle, this RESET may become necessary.
 RESET search_path;
+ERROR:  current transaction is aborted, commands ignored until end of transaction block
 -- For a nonempty table, owner needs permissions throughout ii_Expressions.
 GRANT EXECUTE ON FUNCTION s.index_this_expr TO regress_minimal;
+ERROR:  current transaction is aborted, commands ignored until end of transaction block
 CREATE UNIQUE INDEX u2rows ON s.x USING btree
   ((s.index_this_expr(y, s.const())) COLLATE s.coll s.citext_pattern_ops)
   TABLESPACE regress_create_idx_tblspace
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/contrib/dict_xsyn/expected/dict_xsyn.out C:/cirrus/build/testrun/dict_xsyn/regres...
--- C:/cirrus/contrib/dict_xsyn/expected/dict_xsyn.out	2026-01-19 10:03:24.515753400 +0000
+++ C:/cirrus/build/testrun/dict_xsyn/regress/results/dict_xsyn.out	2026-01-19 10:11:46.884795200 +0000
@@ -1,11 +1,14 @@
 CREATE EXTENSION dict_xsyn;
 -- default configuration - match first word and return it among with all synonyms
 ALTER TEXT SEARCH DICTIONARY xsyn (RULES='xsyn_sample', KEEPORIG=true, MATCHORIG=true, KEEPSYNONYMS=true, MATCHSYNONYMS...
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
+CONTEXT:  line 1 of configuration file "C:/cirrus/build/tmp_install/usr/local/pgsql/share/tsearch_data/xsyn_sample.rule...
+"
 --lexize
 SELECT ts_lexize('xsyn', 'supernova');
-        ts_lexize         
---------------------------
- {supernova,sn,sne,1987a}
+ ts_lexize 
+-----------
+ 
 (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-01-19 10:03:24.981840900 +0000
+++ C:/cirrus/build/testrun/postgres_fdw/regress/results/postgres_fdw.out	2026-01-19 10:12:20.157310800 +0000
@@ -1206,11 +1206,7 @@
 
 SELECT c1, to_tsvector('custom_search'::regconfig, c3) FROM ft1
 WHERE c1 = 642 AND length(to_tsvector('custom_search'::regconfig, c3)) > 0;
- c1  | to_tsvector 
------+-------------
- 642 | '00642':1
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
 -- but if it's in a shippable extension, it can be shipped
 ALTER EXTENSION postgres_fdw ADD TEXT SEARCH CONFIGURATION public.custom_search;
 -- however, that doesn't flush the shippability cache, so do a quick reconnect
@@ -1227,11 +1223,8 @@
 
 SELECT c1, to_tsvector('custom_search'::regconfig, c3) FROM ft1
 WHERE c1 = 642 AND length(to_tsvector('custom_search'::regconfig, c3)) > 0;
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/strings.out C:/cirrus/build/testrun/recovery/027_stream...
--- C:/cirrus/src/test/regress/expected/strings.out	2026-01-19 10:03:29.897026500 +0000
+++ C:/cirrus/build/testrun/recovery/027_stream_regress/data/results/strings.out	2026-01-19 10:09:18.066216100 +0000
@@ -1869,53 +1869,21 @@
 -- Be sure to form every test as an ILIKE/NOT ILIKE pair.
 --
 SELECT 'hawkeye' ILIKE 'h%' AS "true";
- true 
-------
- t
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
 SELECT 'hawkeye' NOT ILIKE 'h%' AS "false";
- false 
--------
- f
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/regress/expected/strings.out C:/cirrus/build/testrun/regress/regress/res...
--- C:/cirrus/src/test/regress/expected/strings.out	2026-01-19 10:03:29.897026500 +0000
+++ C:/cirrus/build/testrun/regress/regress/results/strings.out	2026-01-19 10:06:06.783185200 +0000
@@ -1869,53 +1869,21 @@
 -- Be sure to form every test as an ILIKE/NOT ILIKE pair.
 --
 SELECT 'hawkeye' ILIKE 'h%' AS "true";
- true 
-------
- t
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
 SELECT 'hawkeye' NOT ILIKE 'h%' AS "false";
- false 
--------
- f
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
...
regress
diff --strip-trailing-cr -U3 C:/cirrus/src/test/modules/test_parser/expected/test_parser.out C:/cirrus/build/testrun/tes...
--- C:/cirrus/src/test/modules/test_parser/expected/test_parser.out	2026-01-19 10:03:29.502442900 +0000
+++ C:/cirrus/build/testrun/test_parser/regress/results/test_parser.out	2026-01-19 10:12:39.736939500 +0000
@@ -24,21 +24,9 @@
 (15 rows)
 
 SELECT to_tsvector('testcfg','That''s my first own parser');
-                   to_tsvector                   
--------------------------------------------------
- 'first':3 'my':2 'own':4 'parser':5 'that''s':1
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
 SELECT to_tsquery('testcfg', 'star');
- to_tsquery 
-------------
- 'star'
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
...
Linux - Debian Trixie - Meson
regress
diff -U3 /tmp/cirrus-ci-build/contrib/citext/expected/create_index_acl.out /tmp/cirrus-ci-build/build-32/testrun/citext/...
--- /tmp/cirrus-ci-build/contrib/citext/expected/create_index_acl.out	2026-01-19 10:03:27.268266291 +0000
+++ /tmp/cirrus-ci-build/build-32/testrun/citext/regress/results/create_index_acl.out	2026-01-19 10:13:02.134364139 +000...
@@ -57,21 +57,26 @@
   WHERE (s.index_row_if(y));
 -- Make the table nonempty.
 INSERT INTO s.x VALUES ('foo'), ('bar');
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
 -- If the INSERT runs the planner on index expressions, a search_path change
 -- survives.  As of 2022-06, the INSERT reuses a cached plan.  It does so even
 -- under debug_discard_caches, since each index is new-in-transaction.  If
 -- future work changes a cache lifecycle, this RESET may become necessary.
 RESET search_path;
+ERROR:  current transaction is aborted, commands ignored until end of transaction block
 -- For a nonempty table, owner needs permissions throughout ii_Expressions.
 GRANT EXECUTE ON FUNCTION s.index_this_expr TO regress_minimal;
+ERROR:  current transaction is aborted, commands ignored until end of transaction block
 CREATE UNIQUE INDEX u2rows ON s.x USING btree
   ((s.index_this_expr(y, s.const())) COLLATE s.coll s.citext_pattern_ops)
   TABLESPACE regress_create_idx_tblspace
...
regress
diff -U3 /tmp/cirrus-ci-build/contrib/dict_xsyn/expected/dict_xsyn.out /tmp/cirrus-ci-build/build-32/testrun/dict_xsyn/r...
--- /tmp/cirrus-ci-build/contrib/dict_xsyn/expected/dict_xsyn.out	2026-01-19 10:03:27.276232447 +0000
+++ /tmp/cirrus-ci-build/build-32/testrun/dict_xsyn/regress/results/dict_xsyn.out	2026-01-19 10:13:06.034363629 +0000
@@ -1,11 +1,14 @@
 CREATE EXTENSION dict_xsyn;
 -- default configuration - match first word and return it among with all synonyms
 ALTER TEXT SEARCH DICTIONARY xsyn (RULES='xsyn_sample', KEEPORIG=true, MATCHORIG=true, KEEPSYNONYMS=true, MATCHSYNONYMS...
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
+CONTEXT:  line 1 of configuration file "/tmp/cirrus-ci-build/build-32/tmp_install/usr/local/pgsql/share/tsearch_data/xs...
+"
 --lexize
 SELECT ts_lexize('xsyn', 'supernova');
-        ts_lexize         
---------------------------
- {supernova,sn,sne,1987a}
+ ts_lexize 
+-----------
+ 
 (1 row)
 
...
regress
diff -U3 /tmp/cirrus-ci-build/contrib/postgres_fdw/expected/postgres_fdw.out /tmp/cirrus-ci-build/build-32/testrun/postg...
--- /tmp/cirrus-ci-build/contrib/postgres_fdw/expected/postgres_fdw.out	2026-01-19 10:03:27.359877083 +0000
+++ /tmp/cirrus-ci-build/build-32/testrun/postgres_fdw/regress/results/postgres_fdw.out	2026-01-19 10:13:41.190383946 +0...
@@ -1206,11 +1206,7 @@
 
 SELECT c1, to_tsvector('custom_search'::regconfig, c3) FROM ft1
 WHERE c1 = 642 AND length(to_tsvector('custom_search'::regconfig, c3)) > 0;
- c1  | to_tsvector 
------+-------------
- 642 | '00642':1
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
 -- but if it's in a shippable extension, it can be shipped
 ALTER EXTENSION postgres_fdw ADD TEXT SEARCH CONFIGURATION public.custom_search;
 -- however, that doesn't flush the shippability cache, so do a quick reconnect
@@ -1227,11 +1223,8 @@
 
 SELECT c1, to_tsvector('custom_search'::regconfig, c3) FROM ft1
 WHERE c1 = 642 AND length(to_tsvector('custom_search'::regconfig, c3)) > 0;
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/tstypes.out /tmp/cirrus-ci-build/build-32/testrun/recovery/027_s...
--- /tmp/cirrus-ci-build/src/test/regress/expected/tstypes.out	2026-01-19 10:03:29.196797644 +0000
+++ /tmp/cirrus-ci-build/build-32/testrun/recovery/027_stream_regress/data/results/tstypes.out	2026-01-19 10:12:13.10642...
@@ -686,294 +686,102 @@
 
 --phrase search
 SELECT to_tsvector('simple', '1 2 3 1') @@ '1 <-> 2' AS "true";
- true 
-------
- t
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
 SELECT to_tsvector('simple', '1 2 3 1') @@ '1 <2> 2' AS "false";
- false 
--------
- f
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/regress/expected/tstypes.out /tmp/cirrus-ci-build/build-32/testrun/regress/regres...
--- /tmp/cirrus-ci-build/src/test/regress/expected/tstypes.out	2026-01-19 10:03:29.196797644 +0000
+++ /tmp/cirrus-ci-build/build-32/testrun/regress/regress/results/tstypes.out	2026-01-19 10:10:45.038558874 +0000
@@ -686,294 +686,102 @@
 
 --phrase search
 SELECT to_tsvector('simple', '1 2 3 1') @@ '1 <-> 2' AS "true";
- true 
-------
- t
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
 SELECT to_tsvector('simple', '1 2 3 1') @@ '1 <2> 2' AS "false";
- false 
--------
- f
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
...
regress
diff -U3 /tmp/cirrus-ci-build/src/test/modules/test_parser/expected/test_parser.out /tmp/cirrus-ci-build/build-32/testru...
--- /tmp/cirrus-ci-build/src/test/modules/test_parser/expected/test_parser.out	2026-01-19 10:03:29.037315883 +0000
+++ /tmp/cirrus-ci-build/build-32/testrun/test_parser/regress/results/test_parser.out	2026-01-19 10:13:55.558403479 +000...
@@ -24,21 +24,9 @@
 (15 rows)
 
 SELECT to_tsvector('testcfg','That''s my first own parser');
-                   to_tsvector                   
--------------------------------------------------
- 'first':3 'my':2 'own':4 'parser':5 'that''s':1
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
 SELECT to_tsquery('testcfg', 'star');
- to_tsquery 
-------------
- 'star'
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
...
NetBSD - Meson
regress
diff -U3 /home/postgres/postgres/contrib/citext/expected/create_index_acl.out /home/postgres/postgres/build/testrun/cite...
--- /home/postgres/postgres/contrib/citext/expected/create_index_acl.out	2026-01-19 10:03:46.002391855 +0000
+++ /home/postgres/postgres/build/testrun/citext/regress/results/create_index_acl.out	2026-01-19 10:06:07.249475909 +000...
@@ -57,21 +57,26 @@
   WHERE (s.index_row_if(y));
 -- Make the table nonempty.
 INSERT INTO s.x VALUES ('foo'), ('bar');
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
 -- If the INSERT runs the planner on index expressions, a search_path change
 -- survives.  As of 2022-06, the INSERT reuses a cached plan.  It does so even
 -- under debug_discard_caches, since each index is new-in-transaction.  If
 -- future work changes a cache lifecycle, this RESET may become necessary.
 RESET search_path;
+ERROR:  current transaction is aborted, commands ignored until end of transaction block
 -- For a nonempty table, owner needs permissions throughout ii_Expressions.
 GRANT EXECUTE ON FUNCTION s.index_this_expr TO regress_minimal;
+ERROR:  current transaction is aborted, commands ignored until end of transaction block
 CREATE UNIQUE INDEX u2rows ON s.x USING btree
   ((s.index_this_expr(y, s.const())) COLLATE s.coll s.citext_pattern_ops)
   TABLESPACE regress_create_idx_tblspace
...
regress
diff -U3 /home/postgres/postgres/contrib/dict_xsyn/expected/dict_xsyn.out /home/postgres/postgres/build/testrun/dict_xsy...
--- /home/postgres/postgres/contrib/dict_xsyn/expected/dict_xsyn.out	2026-01-19 10:03:46.078270449 +0000
+++ /home/postgres/postgres/build/testrun/dict_xsyn/regress/results/dict_xsyn.out	2026-01-19 10:06:07.870605722 +0000
@@ -1,11 +1,14 @@
 CREATE EXTENSION dict_xsyn;
 -- default configuration - match first word and return it among with all synonyms
 ALTER TEXT SEARCH DICTIONARY xsyn (RULES='xsyn_sample', KEEPORIG=true, MATCHORIG=true, KEEPSYNONYMS=true, MATCHSYNONYMS...
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
+CONTEXT:  line 1 of configuration file "/home/postgres/postgres/build/tmp_install/usr/local/pgsql/share/tsearch_data/xs...
+"
 --lexize
 SELECT ts_lexize('xsyn', 'supernova');
-        ts_lexize         
---------------------------
- {supernova,sn,sne,1987a}
+ ts_lexize 
+-----------
+ 
 (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-01-19 10:03:46.852129031 +0000
+++ /home/postgres/postgres/build/testrun/postgres_fdw/regress/results/postgres_fdw.out	2026-01-19 10:06:20.856538771 +0...
@@ -1206,11 +1206,7 @@
 
 SELECT c1, to_tsvector('custom_search'::regconfig, c3) FROM ft1
 WHERE c1 = 642 AND length(to_tsvector('custom_search'::regconfig, c3)) > 0;
- c1  | to_tsvector 
------+-------------
- 642 | '00642':1
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
 -- but if it's in a shippable extension, it can be shipped
 ALTER EXTENSION postgres_fdw ADD TEXT SEARCH CONFIGURATION public.custom_search;
 -- however, that doesn't flush the shippability cache, so do a quick reconnect
@@ -1227,11 +1223,8 @@
 
 SELECT c1, to_tsvector('custom_search'::regconfig, c3) FROM ft1
 WHERE c1 = 642 AND length(to_tsvector('custom_search'::regconfig, c3)) > 0;
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/tstypes.out /home/postgres/postgres/build/testrun/recovery/02...
--- /home/postgres/postgres/src/test/regress/expected/tstypes.out	2026-01-19 10:03:54.704173689 +0000
+++ /home/postgres/postgres/build/testrun/recovery/027_stream_regress/data/results/tstypes.out	2026-01-19 10:05:25.68127...
@@ -686,294 +686,102 @@
 
 --phrase search
 SELECT to_tsvector('simple', '1 2 3 1') @@ '1 <-> 2' AS "true";
- true 
-------
- t
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
 SELECT to_tsvector('simple', '1 2 3 1') @@ '1 <2> 2' AS "false";
- false 
--------
- f
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
...
regress
diff -U3 /home/postgres/postgres/src/test/regress/expected/tstypes.out /home/postgres/postgres/build/testrun/regress/reg...
--- /home/postgres/postgres/src/test/regress/expected/tstypes.out	2026-01-19 10:03:54.704173689 +0000
+++ /home/postgres/postgres/build/testrun/regress/regress/results/tstypes.out	2026-01-19 10:04:52.356564453 +0000
@@ -686,294 +686,102 @@
 
 --phrase search
 SELECT to_tsvector('simple', '1 2 3 1') @@ '1 <-> 2' AS "true";
- true 
-------
- t
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
 SELECT to_tsvector('simple', '1 2 3 1') @@ '1 <2> 2' AS "false";
- false 
--------
- f
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
...
regress
diff -U3 /home/postgres/postgres/src/test/modules/test_parser/expected/test_parser.out /home/postgres/postgres/build/tes...
--- /home/postgres/postgres/src/test/modules/test_parser/expected/test_parser.out	2026-01-19 10:03:54.042427917 +0000
+++ /home/postgres/postgres/build/testrun/test_parser/regress/results/test_parser.out	2026-01-19 10:06:25.428521026 +000...
@@ -24,21 +24,9 @@
 (15 rows)
 
 SELECT to_tsvector('testcfg','That''s my first own parser');
-                   to_tsvector                   
--------------------------------------------------
- 'first':3 'my':2 'own':4 'parser':5 'that''s':1
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
 SELECT to_tsquery('testcfg', 'star');
- to_tsquery 
-------------
- 'star'
-(1 row)
-
+ERROR:  Unicode case folding can only be performed if server encoding is UTF8
...
58/6388 pageinspect support for SpGiST
Windows - Server 2022, MinGW64 - Meson
regress
diff --strip-trailing-cr -U3 C:/cirrus/contrib/pageinspect/expected/spgist.out C:/cirrus/build/testrun/pageinspect/regre...
--- C:/cirrus/contrib/pageinspect/expected/spgist.out	2026-01-18 22:12:30.135379600 +0000
+++ C:/cirrus/build/testrun/pageinspect/regress/results/spgist.out	2026-01-18 22:20:30.669116500 +0000
@@ -5,40 +5,36 @@
 CREATE INDEX test_spgist_idx ON test_gist USING spgist (p);
 -- Page 0 is the root, the rest are leaf pages
 SELECT * FROM spgist_page_opaque_info(get_raw_page('test_spgist_idx', 0));
-    lsn     | nplaceholder | nredirection | flags  
-------------+--------------+--------------+--------
- 0/00000000 |            0 |            0 | {meta}
-(1 row)
-
+ERROR:  function get_raw_page(unknown, integer) does not exist
+LINE 1: SELECT * FROM spgist_page_opaque_info(get_raw_page('test_spg...
+                                              ^
+DETAIL:  There is no function of that name.
 SELECT * FROM spgist_page_opaque_info(get_raw_page('test_spgist_idx', 1));
-    lsn     | nplaceholder | nredirection | flags 
-------------+--------------+--------------+-------
- 0/00000000 |            0 |            0 | {}
...
Windows - Server 2022, VS 2019 - Meson & ninja
regress
diff --strip-trailing-cr -U3 C:/cirrus/contrib/pageinspect/expected/spgist.out C:/cirrus/build/testrun/pageinspect/regre...
--- C:/cirrus/contrib/pageinspect/expected/spgist.out	2026-01-18 22:12:17.811011200 +0000
+++ C:/cirrus/build/testrun/pageinspect/regress/results/spgist.out	2026-01-18 22:20:59.980547500 +0000
@@ -5,40 +5,36 @@
 CREATE INDEX test_spgist_idx ON test_gist USING spgist (p);
 -- Page 0 is the root, the rest are leaf pages
 SELECT * FROM spgist_page_opaque_info(get_raw_page('test_spgist_idx', 0));
-    lsn     | nplaceholder | nredirection | flags  
-------------+--------------+--------------+--------
- 0/00000000 |            0 |            0 | {meta}
-(1 row)
-
+ERROR:  function get_raw_page(unknown, integer) does not exist
+LINE 1: SELECT * FROM spgist_page_opaque_info(get_raw_page('test_spg...
+                                              ^
+DETAIL:  There is no function of that name.
 SELECT * FROM spgist_page_opaque_info(get_raw_page('test_spgist_idx', 1));
-    lsn     | nplaceholder | nredirection | flags 
-------------+--------------+--------------+-------
- 0/00000000 |            0 |            0 | {}
...
macOS - Sequoia - Meson
regress
diff -U3 /Users/admin/pgsql/contrib/pageinspect/expected/spgist.out /Users/admin/pgsql/build/testrun/pageinspect/regress...
--- /Users/admin/pgsql/contrib/pageinspect/expected/spgist.out	2026-01-18 22:12:29
+++ /Users/admin/pgsql/build/testrun/pageinspect/regress/results/spgist.out	2026-01-18 22:18:22
@@ -5,40 +5,36 @@
 CREATE INDEX test_spgist_idx ON test_gist USING spgist (p);
 -- Page 0 is the root, the rest are leaf pages
 SELECT * FROM spgist_page_opaque_info(get_raw_page('test_spgist_idx', 0));
-    lsn     | nplaceholder | nredirection | flags  
-------------+--------------+--------------+--------
- 0/00000000 |            0 |            0 | {meta}
-(1 row)
-
+ERROR:  function get_raw_page(unknown, integer) does not exist
+LINE 1: SELECT * FROM spgist_page_opaque_info(get_raw_page('test_spg...
+                                              ^
+DETAIL:  There is no function of that name.
 SELECT * FROM spgist_page_opaque_info(get_raw_page('test_spgist_idx', 1));
-    lsn     | nplaceholder | nredirection | flags 
-------------+--------------+--------------+-------
- 0/00000000 |            0 |            0 | {}
...
Linux - Debian Trixie - Meson
regress
diff -U3 /tmp/cirrus-ci-build/contrib/pageinspect/expected/spgist.out /tmp/cirrus-ci-build/build/testrun/pageinspect/reg...
--- /tmp/cirrus-ci-build/contrib/pageinspect/expected/spgist.out	2026-01-18 22:12:19.508793036 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pageinspect/regress/results/spgist.out	2026-01-18 22:16:11.554485981 +0000
@@ -5,40 +5,36 @@
 CREATE INDEX test_spgist_idx ON test_gist USING spgist (p);
 -- Page 0 is the root, the rest are leaf pages
 SELECT * FROM spgist_page_opaque_info(get_raw_page('test_spgist_idx', 0));
-    lsn     | nplaceholder | nredirection | flags  
-------------+--------------+--------------+--------
- 0/00000000 |            0 |            0 | {meta}
-(1 row)
-
+ERROR:  function get_raw_page(unknown, integer) does not exist
+LINE 1: SELECT * FROM spgist_page_opaque_info(get_raw_page('test_spg...
+                                              ^
+DETAIL:  There is no function of that name.
 SELECT * FROM spgist_page_opaque_info(get_raw_page('test_spgist_idx', 1));
-    lsn     | nplaceholder | nredirection | flags 
-------------+--------------+--------------+-------
- 0/00000000 |            0 |            0 | {}
...
OpenBSD - Meson
regress
diff -U3 /home/postgres/postgres/contrib/pageinspect/expected/spgist.out /home/postgres/postgres/build/testrun/pageinspe...
--- /home/postgres/postgres/contrib/pageinspect/expected/spgist.out	Sun Jan 18 22:12:20 2026
+++ /home/postgres/postgres/build/testrun/pageinspect/regress/results/spgist.out	Sun Jan 18 22:17:01 2026
@@ -5,40 +5,36 @@
 CREATE INDEX test_spgist_idx ON test_gist USING spgist (p);
 -- Page 0 is the root, the rest are leaf pages
 SELECT * FROM spgist_page_opaque_info(get_raw_page('test_spgist_idx', 0));
-    lsn     | nplaceholder | nredirection | flags  
-------------+--------------+--------------+--------
- 0/00000000 |            0 |            0 | {meta}
-(1 row)
-
+ERROR:  function get_raw_page(unknown, integer) does not exist
+LINE 1: SELECT * FROM spgist_page_opaque_info(get_raw_page('test_spg...
+                                              ^
+DETAIL:  There is no function of that name.
 SELECT * FROM spgist_page_opaque_info(get_raw_page('test_spgist_idx', 1));
-    lsn     | nplaceholder | nredirection | flags 
-------------+--------------+--------------+-------
- 0/00000000 |            0 |            0 | {}
...
NetBSD - Meson
regress
diff -U3 /home/postgres/postgres/contrib/pageinspect/expected/spgist.out /home/postgres/postgres/build/testrun/pageinspe...
--- /home/postgres/postgres/contrib/pageinspect/expected/spgist.out	2026-01-18 22:12:36.305719229 +0000
+++ /home/postgres/postgres/build/testrun/pageinspect/regress/results/spgist.out	2026-01-18 22:14:59.431526233 +0000
@@ -5,40 +5,36 @@
 CREATE INDEX test_spgist_idx ON test_gist USING spgist (p);
 -- Page 0 is the root, the rest are leaf pages
 SELECT * FROM spgist_page_opaque_info(get_raw_page('test_spgist_idx', 0));
-    lsn     | nplaceholder | nredirection | flags  
-------------+--------------+--------------+--------
- 0/00000000 |            0 |            0 | {meta}
-(1 row)
-
+ERROR:  function get_raw_page(unknown, integer) does not exist
+LINE 1: SELECT * FROM spgist_page_opaque_info(get_raw_page('test_spg...
+                                              ^
+DETAIL:  There is no function of that name.
 SELECT * FROM spgist_page_opaque_info(get_raw_page('test_spgist_idx', 1));
-    lsn     | nplaceholder | nredirection | flags 
-------------+--------------+--------------+-------
- 0/00000000 |            0 |            0 | {}
...
FreeBSD - Meson
regress
diff -U3 /tmp/cirrus-ci-build/contrib/pageinspect/expected/spgist.out /tmp/cirrus-ci-build/build/testrun/pageinspect/reg...
--- /tmp/cirrus-ci-build/contrib/pageinspect/expected/spgist.out	2026-01-18 22:12:18.419272000 +0000
+++ /tmp/cirrus-ci-build/build/testrun/pageinspect/regress/results/spgist.out	2026-01-18 22:15:17.598395000 +0000
@@ -5,40 +5,36 @@
 CREATE INDEX test_spgist_idx ON test_gist USING spgist (p);
 -- Page 0 is the root, the rest are leaf pages
 SELECT * FROM spgist_page_opaque_info(get_raw_page('test_spgist_idx', 0));
-    lsn     | nplaceholder | nredirection | flags  
-------------+--------------+--------------+--------
- 0/00000000 |            0 |            0 | {meta}
-(1 row)
-
+ERROR:  function get_raw_page(unknown, integer) does not exist
+LINE 1: SELECT * FROM spgist_page_opaque_info(get_raw_page('test_spg...
+                                              ^
+DETAIL:  There is no function of that name.
 SELECT * FROM spgist_page_opaque_info(get_raw_page('test_spgist_idx', 1));
-    lsn     | nplaceholder | nredirection | flags 
-------------+--------------+--------------+-------
- 0/00000000 |            0 |            0 | {}
...