agora inbox for pgsql-hackers@postgresql.org  
help / color / mirror / Atom feed
[PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
484+ messages / 2 participants
[nested] [flat]

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

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

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


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



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

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

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

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally
@ 2026-06-03 18:04  Andres Freund <andres@anarazel.de>
  0 siblings, 0 replies; 484+ messages in thread

From: Andres Freund @ 2026-06-03 18:04 UTC (permalink / raw)

Centrally define the version of linux runners, to make it easier to update. We
don't just want to use ubuntu-latest, as it's not implausible
---
 .github/workflows/pg-ci.yml | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/pg-ci.yml b/.github/workflows/pg-ci.yml
index b3997ab42ad..93b17af46df 100644
--- a/.github/workflows/pg-ci.yml
+++ b/.github/workflows/pg-ci.yml
@@ -114,6 +114,12 @@ env:
     --with-uuid=ossp
     --with-zstd
 
+  # Centrally define the version of linux runners, to make it easier to
+  # update. We don't just want to use ubuntu-latest, as it's not implausible
+  # there will be breakage when that switches to the next ubuntu version.
+  _LINUX_RUNS_ON: &linux_runs_on |
+    ubuntu-24.04
+
   # Debian Trixie containers used by all Linux jobs. Built by
   # 'https://github.com/anarazel/pg-vm-images/';.
   CONTAINER_REPO: ghcr.io/anarazel/pg-vm-images/main
@@ -133,7 +139,7 @@ jobs:
   # consumed by the jobs' `if:` conditions.
   setup:
     name: Determine enabled jobs
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 1
     outputs:
       linux: ${{ steps.os.outputs.linux }}
@@ -198,7 +204,7 @@ jobs:
     if: |
       !cancelled() &&
       needs.setup.outputs.sanitycheck == 'true'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 15
     container: &linux_ci_container
       image: ${{ needs.setup.outputs.container_linux_ci }}
@@ -357,7 +363,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.linux == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
 
@@ -449,7 +455,7 @@ jobs:
     name: Linux - Meson (32-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -539,7 +545,7 @@ jobs:
     name: Linux - Meson (64-bit)
     needs: [setup, sanity-check]
     if: *linux_job_if
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     container: *linux_ci_container
     timeout-minutes: 60
     env: *linux_env
@@ -1022,7 +1028,7 @@ jobs:
       !cancelled() &&
       needs.setup.outputs.compilerwarnings == 'true' &&
       needs.sanity-check.result != 'failure'
-    runs-on: ubuntu-latest
+    runs-on: *linux_runs_on
     timeout-minutes: 60
     container:
       image: ${{ needs.setup.outputs.container_linux_ci_docs }}
-- 
2.54.0.380.gc69baaf57b


--lyfxwjjve3vodszg
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v9a-0022-ci-Slice-tests-on-windows-vs-across-two-runners.patch"



^ permalink  raw  reply  [nested|flat] 484+ messages in thread

* [PATCH v1 2/8] convert ParallelBitmapHeapState->state to an atomic
@ 2026-07-09 18:38  Nathan Bossart <nathan@postgresql.org>
  0 siblings, 0 replies; 484+ messages in thread

From: Nathan Bossart @ 2026-07-09 18:38 UTC (permalink / raw)

---
 src/backend/executor/nodeBitmapHeapscan.c | 21 ++++++---------------
 1 file changed, 6 insertions(+), 15 deletions(-)

diff --git a/src/backend/executor/nodeBitmapHeapscan.c b/src/backend/executor/nodeBitmapHeapscan.c
index 83d6478bc2b..f2bb487bf10 100644
--- a/src/backend/executor/nodeBitmapHeapscan.c
+++ b/src/backend/executor/nodeBitmapHeapscan.c
@@ -79,7 +79,6 @@ typedef enum
 /* ----------------
  *	 ParallelBitmapHeapState information
  *		tbmiterator				iterator for scanning current pages
- *		mutex					mutual exclusion for state
  *		state					current state of the TIDBitmap
  *		cv						conditional wait variable
  * ----------------
@@ -87,8 +86,7 @@ typedef enum
 typedef struct ParallelBitmapHeapState
 {
 	dsa_pointer tbmiterator;
-	slock_t		mutex;
-	SharedBitmapState state;
+	pg_atomic_uint32 state;
 	ConditionVariable cv;
 } ParallelBitmapHeapState;
 
@@ -228,9 +226,7 @@ BitmapHeapNext(BitmapHeapScanState *node)
 static inline void
 BitmapDoneInitializingSharedState(ParallelBitmapHeapState *pstate)
 {
-	SpinLockAcquire(&pstate->mutex);
-	pstate->state = BM_FINISHED;
-	SpinLockRelease(&pstate->mutex);
+	pg_atomic_write_membarrier_u32(&pstate->state, BM_FINISHED);
 	ConditionVariableBroadcast(&pstate->cv);
 }
 
@@ -480,11 +476,8 @@ BitmapShouldInitializeSharedState(ParallelBitmapHeapState *pstate)
 
 	while (1)
 	{
-		SpinLockAcquire(&pstate->mutex);
-		state = pstate->state;
-		if (pstate->state == BM_INITIAL)
-			pstate->state = BM_INPROGRESS;
-		SpinLockRelease(&pstate->mutex);
+		state = BM_INITIAL;
+		pg_atomic_compare_exchange_u32(&pstate->state, &state, BM_INPROGRESS);
 
 		/* Exit if bitmap is done, or if we're the leader. */
 		if (state != BM_INPROGRESS)
@@ -538,9 +531,7 @@ ExecBitmapHeapInitializeDSM(BitmapHeapScanState *node,
 
 	pstate->tbmiterator = 0;
 
-	/* Initialize the mutex */
-	SpinLockInit(&pstate->mutex);
-	pstate->state = BM_INITIAL;
+	pg_atomic_init_u32(&pstate->state, BM_INITIAL);
 
 	ConditionVariableInit(&pstate->cv);
 
@@ -565,7 +556,7 @@ ExecBitmapHeapReInitializeDSM(BitmapHeapScanState *node,
 	if (dsa == NULL)
 		return;
 
-	pstate->state = BM_INITIAL;
+	pg_atomic_write_u32(&pstate->state, BM_INITIAL);
 
 	if (DsaPointerIsValid(pstate->tbmiterator))
 		tbm_free_shared_area(dsa, pstate->tbmiterator);
-- 
2.50.1 (Apple Git-155)


--Ot5x3ffkWEuxilWO
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment;
	filename=v1-0003-convert-FixedParallelState-last_xlog_end-to-an-at.patch



^ permalink  raw  reply  [nested|flat] 484+ messages in thread


end of thread, other threads:[~2026-07-09 18:38 UTC | newest]

Thread overview: 484+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-06-03 18:04 [PATCH v9a 21/22] ci: linux: Run on ubuntu-24.04 and define what we run on centrally Andres Freund <andres@anarazel.de>
2026-07-09 18:38 [PATCH v1 2/8] convert ParallelBitmapHeapState->state to an atomic Nathan Bossart <nathan@postgresql.org>

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox