Umbrella for the work required to make PostgreSQL 19's new features behave correctly under Citus, and to adopt the ones that benefit distributed execution.
This is scoped to feature work. Build, compatibility and CI stabilisation for PG19 are tracked separately in #8597. This feature umbrella is independent and is not a sub-issue of the support umbrella.
Background
PG19's feature set was reviewed against Citus and each feature classified into one of three buckets:
- Just works - the feature is planner- or executor-local and needs no distributed handling.
- Needs Citus modification - the feature changes parse trees, deparse output, planner hooks or storage behaviour in ways Citus must handle explicitly. Everything below is in this bucket.
- Not relevant - single-node-only features with no distributed analogue.
The items below are the "needs Citus modification" set. They split into four groups.
Guardrails: reject or error explicitly rather than silently mishandle
| Issue |
PR |
Local solution / status |
Remaining action |
| #8756 |
— |
Verified implementation plan only: reject REPACK CONCURRENTLY after core-compatible lock lookup; no commit |
Approve implementation, add second-session lock regression, review/PR |
| #8758 |
— |
Verified fail-closed behavior and subtype-specific error/test plan; no commit |
Approve implementation, cross-version tests, review/PR |
| #8761 |
#8763 |
Reviewed PG19-gated rejection implemented and PR open |
Review and merge |
Correctness: distributed behavior fixes
| Issue |
PR |
Local solution / status |
Remaining action |
| #8759 |
#8766, #8767 |
Both reviewed fixes published: shared REVOKE ordering and PG19 table grantor propagation |
Review/merge both; close issue only after both land |
| #8760 |
#8765 |
Reviewed JSON COPY coordinator-reroute/protocol fix published |
Review and merge |
| #8762 |
— |
Root cause and structural ROW(alias.*)::logical_type plan verified; no commit |
Approve implementation across supported ruleutils copies, cross-version tests, review/PR |
Adoption and longer-term design
| Issue |
PR |
Local solution / status |
Remaining action |
| #8770 |
— |
Local 3-file implementation tested: INSTRUMENT_IO in ExplainWorkerPlan() plus remote IO option; no published commit |
Produce clean commit SHA, release review, approval, PR |
| #8771 |
— |
No active defect reproduced; 30/30 plan/result probes green; watch item only |
Decide close vs retain watch/detection item; no code currently justified |
| #8772 |
— |
Design completed, implementation deferred; fixed per-node slot ceiling requires admission control |
Architecture/design approval before any implementation |
| #8773 |
— |
AIO adoption measured and deferred; no local implementation |
Decide close/defer; future work needs benchmark-backed design; track cache-pollution defect separately |
Notes on PR linkage
PRs targeting pg19-support rather than the default branch do not automatically close issues. Associations and remaining actions are recorded explicitly above.
Umbrella for the work required to make PostgreSQL 19's new features behave correctly under Citus, and to adopt the ones that benefit distributed execution.
This is scoped to feature work. Build, compatibility and CI stabilisation for PG19 are tracked separately in #8597. This feature umbrella is independent and is not a sub-issue of the support umbrella.
Background
PG19's feature set was reviewed against Citus and each feature classified into one of three buckets:
The items below are the "needs Citus modification" set. They split into four groups.
Guardrails: reject or error explicitly rather than silently mishandle
REPACK CONCURRENTLYafter core-compatible lock lookup; no commitCorrectness: distributed behavior fixes
ROW(alias.*)::logical_typeplan verified; no commitAdoption and longer-term design
INSTRUMENT_IOinExplainWorkerPlan()plus remote IO option; no published commitNotes on PR linkage
PRs targeting
pg19-supportrather than the default branch do not automatically close issues. Associations and remaining actions are recorded explicitly above.