Skip to content

Add PostgreSQL 19 support to Citus #8597

@ihalatci

Description

@ihalatci

Umbrella issue. Tracks the work to bring Citus up to the latest PG
major.

1. Background

PostgreSQL 19 (currently pg19devel) is the next major. Per Citus'
"three most recent PG majors" support window, the next Citus major must
add PG19 alongside PG17 and PG18 (Citus 14.x: PG16/17/18 → Citus 15.x:
PG17/18/19).

The work splits into three top-level phases:

  1. Build & runtime correctness — Citus must compile cleanly on
    PG19, the extension must load, basic DDL/DML must not crash, and
    columnar must operate.
  2. Regression test parity — the full make check suite must pass
    on PG19 with the same passing tests as on PG17/PG18. This requires
    both real fixes (PG19-only crashes that only surface in the regress
    harness) and cosmetic / framework adjustments (normalize.sed,
    GUCs to pin plan shape).
  3. Feature integration — opt-in to / interoperate with new PG19
    capabilities where doing so makes sense for Citus.

All PRs land on the pg19-support development branch and that branch
is merged to main once the matrix below is green.

2. Sub-tasks

Build & runtime correctness:

Regression test parity:

3. Feature integration

This section will track which PG19 features Citus should adopt or
integrate with (e.g. Eager Aggregation, parallel index build hooks,
changes in EXPLAIN, new TupleDesc cache, the new pg_stat_io knobs,
async I/O, etc.), and which we explicitly choose to disable or ignore.

Verification status

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions