6 min read
Keep roadmap commitments independent of PostgreSQL 19’s release date
A release date is not an architecture guarantee
As of October 19, 2026, PostgreSQL 19 is a release candidate, and the project lists November 19, 2026 as its planned general availability date, subject to further issues or release candidates (PostgreSQL 19 RC 1 announcement). That is useful planning information. It is not a date I would make a product commitment depend on.
The distinction matters because the schedule has already moved. The Register reports that PostgreSQL 19 had been expected in late September or early October, and that the release was pushed back while a number of features were held back (The Register’s report on the PostgreSQL 19 delay). The official release candidate announcement gives the current planned date; the report describes how the project arrived here. Neither turns an unreleased capability into a dependable premise for a roadmap.
I would separate a feature that is interesting to test from one the architecture requires. Testing a new database capability is reversible: I can try it, learn what it does to a workload, and decide not to adopt it. Making a product delivery depend on that capability is a different decision. It ties the product’s schedule, design, and potentially its data model to a release date and feature set that are not yet settled.
If the design only works when that feature ships on schedule, it is already a hidden delivery dependency. Calling it a database choice does not make the dependency less real.
Keep a baseline that works without the feature
I would first write down the smallest design that meets the product requirement on a supported PostgreSQL version the team can use now. That is the baseline. It should not be a knowingly inferior placeholder that can only survive until PostgreSQL 19 arrives. It needs to remain a plausible design if the new feature ships later than expected, changes before general availability, or does not make the release at all.
Then I would describe the new capability as an option with an explicit adoption condition. For example, the decision record might say that a feature can be adopted after it is present in a final release, the team has tested the relevant behavior, and the operating and migration implications are understood. Those are decision gates, not promises about when the work will finish.
That distinction changes how I would present the roadmap. I would not promise “deliver the feature using PostgreSQL 19.” I would promise the product outcome, with a baseline implementation that can deliver it, and track the database capability as an opportunity to simplify or improve that implementation. If the capability is ready and proves useful, I can adopt it. If not, the product plan does not need to be rewritten around the database calendar.
This is not an argument against using new PostgreSQL features. It is an argument against confusing the possibility of a feature with a dependable delivery input. A new feature may ultimately be the right choice; until I can validate its final behavior in the release I plan to run, I would not make the rest of the design contingent on it.
Make the dependency visible in the design
A useful test is to ask what would have to change if the feature were absent. If the answer is “only the implementation behind a boundary,” then the feature may be an optional implementation choice. If the answer is “the data model, the service contract, the customer promise, and the delivery date,” then it is already carrying architectural weight.
I would make that difference visible in the decision record rather than leaving it implicit in a ticket or a conversation:
## Decision
Deliver the product requirement using the supported PostgreSQL baseline.
## Optional capability
Evaluate the PostgreSQL 19 feature after its release and feature set are settled.
## Adoption conditions
- The final release includes the required behavior.
- Tests cover the application's actual read and write paths.
- Operations, upgrades, and recovery remain acceptable.
- The capability provides enough value to justify changing the baseline.
## If the conditions are not met
Keep the baseline implementation and revisit the decision later.
The example does not assume what a particular feature will do. It makes the commitment boundary explicit: the product requirement is the commitment; the database feature is a candidate means of meeting it. That also gives reviewers a concrete question to ask when the release changes: does this alter the product outcome, or only the optional implementation path?
The same discipline applies to data. I would avoid shaping a permanent schema or service interface around a capability that is still under development unless I can explain how the system remains valid without it. A database feature can be local in the code and still create a broad dependency through stored data, migrations, or the behavior other services expect. The fallback has to account for those consequences, not just whether a query can be rewritten.
Revisit after the release settles
PostgreSQL’s own announcement describes the planned release date as conditional: a further issue could require a delay or another release candidate (PostgreSQL 19 RC 1 announcement). The right response is not to guess whether the date will hold. It is to set a review point and keep the current plan viable until that review.
At that point, I would check the final feature set and test the actual application behavior. A feature being present is not, by itself, a reason to adopt it. I would compare it with the baseline against the workload and operational constraints that matter to the design. That is a separate question from whether the feature exists, and it should not be answered by excitement about a release announcement.
The release may arrive on its planned date and include the capability I want. It may arrive later, or the capability may not be there. In either case, a roadmap built around a working baseline can keep its product commitment intact. I would treat PostgreSQL 19 as an option to evaluate, not a date the architecture needs to be right.
Drafted with AI assistance, reviewed and edited by Ali.