Contents
PostgreSQL 14-18 Release Matrix — 2026-07-14
Objective
Verify the supported PostgreSQL-major contract and the completed GQL write correctness matrix in isolated PostgreSQL 14, 15, 16, 17, and 18 clusters.
Environment
- Docker Desktop 28.3.3 on arm64 macOS
- Rust 1.96.0
- cargo-pgrx 0.19.1
- PostgreSQL package versions 14.23, 15.18, 16.14, 17.10, and 18.4
- A checksum-pinned
sfw1.13.1 binary guarded the cargo-pgrx installation performed while building the disposable test image.
Command
Run from graph/:
PG_VERSIONS='14 15 16 17 18' \
RUN_PGRX_SQL=1 \
RUN_GQL_WRITE_MATRIX=1 \
./tests/heavy/run_pg_matrix_docker.sh
Results
| PostgreSQL | Rust release tests | pgrx tests | Full isolation | Persisted isolation | MERGE race | Relationship race | Stale-write race |
|---|---|---|---|---|---|---|---|
| 14.23 | 718 passed, 1 ignored | 981 passed, 1 ignored | PASS | PASS | PASS | PASS | PASS |
| 15.18 | 718 passed, 1 ignored | 981 passed, 1 ignored | PASS | PASS | PASS | PASS | PASS |
| 16.14 | 718 passed, 1 ignored | 981 passed, 1 ignored | PASS | PASS | PASS | PASS | PASS |
| 17.10 | 718 passed, 1 ignored | 981 passed, 1 ignored | PASS | PASS | PASS | PASS | PASS |
| 18.4 | 718 passed, 1 ignored | 981 passed, 1 ignored | PASS | PASS | PASS | PASS | PASS |
The ignored Rust/pgrx test is the manually invoked million-node scale test. The matrix finished with both supported-major summaries passing.
Environment Notes
The final authoritative run used isolated temporary clusters and Unix sockets inside one disposable image. Image construction uses resumable, checksum- verified downloads and BuildKit caches to tolerate transient network failures. The release Rust leg enforces latency contracts; pgrx debug builds retain the same correctness assertions without applying release-only wall-clock limits. Planner index assertions use a selective production-shaped fixture so their result does not depend on the small-table cost choice made by older PostgreSQL majors.