test-citus-upgrade matrix is missing a PG18 entry
- Dominant language
- C
- Stars
- 12.8k
- Forks
- 794
- Avg merge
- 2d 14h
- Merged PRs (30d)
- 31
Description
The `test-citus-upgrade` job in `.github/workflows/build_and_test.yml` runs only against PG16 and PG17. PG18 was never added.
```yaml
strategy:
fail-fast: false
matrix:
include:
- pg_version: ${{ needs.params.outputs.pg16_version }}
- pg_version: ${{ needs.params.outputs.pg17_version }}
```
PG17 was added in #8423; the equivalent entry for PG18 did not follow when PG18 support landed. This means Citus-version upgrade paths are untested on the newest supported PostgreSQL.
This becomes more visible once #8750 removes PG16, at which point the matrix degenerates to a single entry.
## Fix
Add a `pg18_version` entry to the matrix. The upstream image should already exist — [`citusdata/the-process`](https://github.com/citusdata/the-process) defines `CITUS_UPGRADE_VERSIONS_18=v14.2.0` in `circleci/images/Makefile` alongside the `_16` and `_17` entries.
Worth confirming the image is actually published before assuming this is a one-line change.
Kept out of #8750 deliberately: that PR removes a PostgreSQL version, and adding coverage for a different one is unrelated scope.
Contributor guide
Research direction
Open .github/workflows/build_and_test.yml and inspect the test-citus-upgrade matrix, then check circleci/images/Makefile in citusdata/the-process for the PG18 image entry and confirm that image is published. Done means the matrix includes pg18_version and the upgrade path is covered on PG18.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions, postgresql
- Domain
- ci-cd, databases
- Issue type
- Feature
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Quiet
- Clarity
- Clearly specified
- Newbie friendliness
- 78/100