agora inbox for [email protected]  
help / color / mirror / Atom feed
[PATCH v2 4/6] Introduce pending flag for GUC assign hooks
484+ messages / 2 participants
[nested] [flat]

* [PATCH v2 4/6] Introduce pending flag for GUC assign hooks
@ 2025-02-19 16:45  Dmitrii Dolgov <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Dmitrii Dolgov @ 2025-02-19 16:45 UTC (permalink / raw)

Currently an assing hook can perform some preprocessing of a new value,
but it cannot change the behavior, which dictates that the new value
will be applied immediately after the hook. Certain GUC options (like
shared_buffers, coming in subsequent patches) may need coordinating work
between backends to change, meaning we cannot apply it right away.

Add a new flag "pending" for an assign hook to allow the hook indicate
exactly that. If the pending flag is set after the hook, the new value
will not be applied and it's handling becomes the hook's implementation
responsibility.

Note, that this also requires changes in the way how GUCs are getting
reported, but the patch does not cover that yet.
---
 src/backend/access/transam/xlog.c    |  2 +-
 src/backend/commands/variable.c      |  2 +-
 src/backend/libpq/pqcomm.c           |  8 ++--
 src/backend/tcop/postgres.c          |  2 +-
 src/backend/utils/misc/guc.c         | 59 +++++++++++++++++++---------
 src/backend/utils/misc/stack_depth.c |  2 +-
 src/include/utils/guc.h              |  2 +-
 src/include/utils/guc_hooks.h        | 16 ++++----
 8 files changed, 57 insertions(+), 36 deletions(-)

diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c
index f9bf5ba7509..ff82ba0a53d 100644
--- a/src/backend/access/transam/xlog.c
+++ b/src/backend/access/transam/xlog.c
@@ -2188,7 +2188,7 @@ CalculateCheckpointSegments(void)
 }
 
 void
-assign_max_wal_size(int newval, void *extra)
+assign_max_wal_size(int newval, void *extra, bool *pending)
 {
 	max_wal_size_mb = newval;
 	CalculateCheckpointSegments();
diff --git a/src/backend/commands/variable.c b/src/backend/commands/variable.c
index 4ad6e236d69..f24c2a0d252 100644
--- a/src/backend/commands/variable.c
+++ b/src/backend/commands/variable.c
@@ -1143,7 +1143,7 @@ check_cluster_name(char **newval, void **extra, GucSource source)
  * GUC assign_hook for maintenance_io_concurrency
  */
 void
-assign_maintenance_io_concurrency(int newval, void *extra)
+assign_maintenance_io_concurrency(int newval, void *extra, bool *pending)
 {
 #ifdef USE_PREFETCH
 	/*
diff --git a/src/backend/libpq/pqcomm.c b/src/backend/libpq/pqcomm.c
index 61ea3722ae2..cdf21847d7e 100644
--- a/src/backend/libpq/pqcomm.c
+++ b/src/backend/libpq/pqcomm.c
@@ -1949,7 +1949,7 @@ pq_settcpusertimeout(int timeout, Port *port)
  * GUC assign_hook for tcp_keepalives_idle
  */
 void
-assign_tcp_keepalives_idle(int newval, void *extra)
+assign_tcp_keepalives_idle(int newval, void *extra, bool *pending)
 {
 	/*
 	 * The kernel API provides no way to test a value without setting it; and
@@ -1982,7 +1982,7 @@ show_tcp_keepalives_idle(void)
  * GUC assign_hook for tcp_keepalives_interval
  */
 void
-assign_tcp_keepalives_interval(int newval, void *extra)
+assign_tcp_keepalives_interval(int newval, void *extra, bool *pending)
 {
 	/* See comments in assign_tcp_keepalives_idle */
 	(void) pq_setkeepalivesinterval(newval, MyProcPort);
@@ -2005,7 +2005,7 @@ show_tcp_keepalives_interval(void)
  * GUC assign_hook for tcp_keepalives_count
  */
 void
-assign_tcp_keepalives_count(int newval, void *extra)
+assign_tcp_keepalives_count(int newval, void *extra, bool *pending)
 {
 	/* See comments in assign_tcp_keepalives_idle */
 	(void) pq_setkeepalivescount(newval, MyProcPort);
@@ -2028,7 +2028,7 @@ show_tcp_keepalives_count(void)
  * GUC assign_hook for tcp_user_timeout
  */
 void
-assign_tcp_user_timeout(int newval, void *extra)
+assign_tcp_user_timeout(int newval, void *extra, bool *pending)
 {
 	/* See comments in assign_tcp_keepalives_idle */
 	(void) pq_settcpusertimeout(newval, MyProcPort);
diff --git a/src/backend/tcop/postgres.c b/src/backend/tcop/postgres.c
index 1149d89d7a1..13fb8c31702 100644
--- a/src/backend/tcop/postgres.c
+++ b/src/backend/tcop/postgres.c
@@ -3555,7 +3555,7 @@ check_log_stats(bool *newval, void **extra, GucSource source)
 
 /* GUC assign hook for transaction_timeout */
 void
-assign_transaction_timeout(int newval, void *extra)
+assign_transaction_timeout(int newval, void *extra, bool *pending)
 {
 	if (IsTransactionState())
 	{
diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c
index 12192445218..bab1c5d08f6 100644
--- a/src/backend/utils/misc/guc.c
+++ b/src/backend/utils/misc/guc.c
@@ -1679,6 +1679,7 @@ InitializeOneGUCOption(struct config_generic *gconf)
 				struct config_int *conf = (struct config_int *) gconf;
 				int			newval = conf->boot_val;
 				void	   *extra = NULL;
+				bool 	   pending = false;
 
 				Assert(newval >= conf->min);
 				Assert(newval <= conf->max);
@@ -1687,9 +1688,13 @@ InitializeOneGUCOption(struct config_generic *gconf)
 					elog(FATAL, "failed to initialize %s to %d",
 						 conf->gen.name, newval);
 				if (conf->assign_hook)
-					conf->assign_hook(newval, extra);
-				*conf->variable = conf->reset_val = newval;
-				conf->gen.extra = conf->reset_extra = extra;
+					conf->assign_hook(newval, extra, &pending);
+
+				if (!pending)
+				{
+					*conf->variable = conf->reset_val = newval;
+					conf->gen.extra = conf->reset_extra = extra;
+				}
 				break;
 			}
 		case PGC_REAL:
@@ -2041,13 +2046,18 @@ ResetAllOptions(void)
 			case PGC_INT:
 				{
 					struct config_int *conf = (struct config_int *) gconf;
+					bool 			  pending = false;
 
 					if (conf->assign_hook)
 						conf->assign_hook(conf->reset_val,
-										  conf->reset_extra);
-					*conf->variable = conf->reset_val;
-					set_extra_field(&conf->gen, &conf->gen.extra,
-									conf->reset_extra);
+										  conf->reset_extra,
+										  &pending);
+					if (!pending)
+					{
+						*conf->variable = conf->reset_val;
+						set_extra_field(&conf->gen, &conf->gen.extra,
+										conf->reset_extra);
+					}
 					break;
 				}
 			case PGC_REAL:
@@ -2424,16 +2434,21 @@ AtEOXact_GUC(bool isCommit, int nestLevel)
 							struct config_int *conf = (struct config_int *) gconf;
 							int			newval = newvalue.val.intval;
 							void	   *newextra = newvalue.extra;
+							bool 	    pending = false;
 
 							if (*conf->variable != newval ||
 								conf->gen.extra != newextra)
 							{
 								if (conf->assign_hook)
-									conf->assign_hook(newval, newextra);
-								*conf->variable = newval;
-								set_extra_field(&conf->gen, &conf->gen.extra,
-												newextra);
-								changed = true;
+									conf->assign_hook(newval, newextra, &pending);
+
+								if (!pending)
+								{
+									*conf->variable = newval;
+									set_extra_field(&conf->gen, &conf->gen.extra,
+													newextra);
+									changed = true;
+								}
 							}
 							break;
 						}
@@ -3850,18 +3865,24 @@ set_config_with_handle(const char *name, config_handle *handle,
 
 				if (changeVal)
 				{
+					bool pending = false;
+
 					/* Save old value to support transaction abort */
 					if (!makeDefault)
 						push_old_value(&conf->gen, action);
 
 					if (conf->assign_hook)
-						conf->assign_hook(newval, newextra);
-					*conf->variable = newval;
-					set_extra_field(&conf->gen, &conf->gen.extra,
-									newextra);
-					set_guc_source(&conf->gen, source);
-					conf->gen.scontext = context;
-					conf->gen.srole = srole;
+						conf->assign_hook(newval, newextra, &pending);
+
+					if (!pending)
+					{
+						*conf->variable = newval;
+						set_extra_field(&conf->gen, &conf->gen.extra,
+										newextra);
+						set_guc_source(&conf->gen, source);
+						conf->gen.scontext = context;
+						conf->gen.srole = srole;
+					}
 				}
 				if (makeDefault)
 				{
diff --git a/src/backend/utils/misc/stack_depth.c b/src/backend/utils/misc/stack_depth.c
index 8f7cf531fbc..ef59ae62008 100644
--- a/src/backend/utils/misc/stack_depth.c
+++ b/src/backend/utils/misc/stack_depth.c
@@ -156,7 +156,7 @@ check_max_stack_depth(int *newval, void **extra, GucSource source)
 
 /* GUC assign hook for max_stack_depth */
 void
-assign_max_stack_depth(int newval, void *extra)
+assign_max_stack_depth(int newval, void *extra, bool *pending)
 {
 	ssize_t		newval_bytes = newval * (ssize_t) 1024;
 
diff --git a/src/include/utils/guc.h b/src/include/utils/guc.h
index 1233e07d7da..ce9f258100d 100644
--- a/src/include/utils/guc.h
+++ b/src/include/utils/guc.h
@@ -187,7 +187,7 @@ typedef bool (*GucStringCheckHook) (char **newval, void **extra, GucSource sourc
 typedef bool (*GucEnumCheckHook) (int *newval, void **extra, GucSource source);
 
 typedef void (*GucBoolAssignHook) (bool newval, void *extra);
-typedef void (*GucIntAssignHook) (int newval, void *extra);
+typedef void (*GucIntAssignHook) (int newval, void *extra, bool *pending);
 typedef void (*GucRealAssignHook) (double newval, void *extra);
 typedef void (*GucStringAssignHook) (const char *newval, void *extra);
 typedef void (*GucEnumAssignHook) (int newval, void *extra);
diff --git a/src/include/utils/guc_hooks.h b/src/include/utils/guc_hooks.h
index 951451a9765..3e380f29e5a 100644
--- a/src/include/utils/guc_hooks.h
+++ b/src/include/utils/guc_hooks.h
@@ -81,12 +81,12 @@ extern void assign_log_timezone(const char *newval, void *extra);
 extern const char *show_log_timezone(void);
 extern bool check_maintenance_io_concurrency(int *newval, void **extra,
 											 GucSource source);
-extern void assign_maintenance_io_concurrency(int newval, void *extra);
+extern void assign_maintenance_io_concurrency(int newval, void *extra, bool *pending);
 extern bool check_max_slot_wal_keep_size(int *newval, void **extra,
 										 GucSource source);
-extern void assign_max_wal_size(int newval, void *extra);
+extern void assign_max_wal_size(int newval, void *extra, bool *pending);
 extern bool check_max_stack_depth(int *newval, void **extra, GucSource source);
-extern void assign_max_stack_depth(int newval, void *extra);
+extern void assign_max_stack_depth(int newval, void *extra, bool *pending);
 extern bool check_multixact_member_buffers(int *newval, void **extra,
 										   GucSource source);
 extern bool check_multixact_offset_buffers(int *newval, void **extra,
@@ -141,13 +141,13 @@ extern void assign_synchronous_standby_names(const char *newval, void *extra);
 extern void assign_synchronous_commit(int newval, void *extra);
 extern void assign_syslog_facility(int newval, void *extra);
 extern void assign_syslog_ident(const char *newval, void *extra);
-extern void assign_tcp_keepalives_count(int newval, void *extra);
+extern void assign_tcp_keepalives_count(int newval, void *extra, bool *pending);
 extern const char *show_tcp_keepalives_count(void);
-extern void assign_tcp_keepalives_idle(int newval, void *extra);
+extern void assign_tcp_keepalives_idle(int newval, void *extra, bool *pending);
 extern const char *show_tcp_keepalives_idle(void);
-extern void assign_tcp_keepalives_interval(int newval, void *extra);
+extern void assign_tcp_keepalives_interval(int newval, void *extra, bool *pending);
 extern const char *show_tcp_keepalives_interval(void);
-extern void assign_tcp_user_timeout(int newval, void *extra);
+extern void assign_tcp_user_timeout(int newval, void *extra, bool *pending);
 extern const char *show_tcp_user_timeout(void);
 extern bool check_temp_buffers(int *newval, void **extra, GucSource source);
 extern bool check_temp_tablespaces(char **newval, void **extra,
@@ -163,7 +163,7 @@ extern bool check_transaction_buffers(int *newval, void **extra, GucSource sourc
 extern bool check_transaction_deferrable(bool *newval, void **extra, GucSource source);
 extern bool check_transaction_isolation(int *newval, void **extra, GucSource source);
 extern bool check_transaction_read_only(bool *newval, void **extra, GucSource source);
-extern void assign_transaction_timeout(int newval, void *extra);
+extern void assign_transaction_timeout(int newval, void *extra, bool *pending);
 extern const char *show_unix_socket_permissions(void);
 extern bool check_wal_buffers(int *newval, void **extra, GucSource source);
 extern bool check_wal_consistency_checking(char **newval, void **extra,
-- 
2.45.1


--q7xzg7duksj2kgko
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment;
	filename="v2-0005-Allow-to-resize-shared-memory-without-restart.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <[email protected]>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



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


end of thread, other threads:[~2026-06-03 18:04 UTC | newest]

Thread overview: 484+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2025-02-19 16:45 [PATCH v2 4/6] Introduce pending flag for GUC assign hooks Dmitrii Dolgov <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <[email protected]>

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox