We’re wrapping up our series of articles reviewing the changes in PostgreSQL 19. The previous articles covered the first four CommitFests: 2025-07, 2025-09, 2025-11, 2026-01.

Today we begin our review of the March 2026 CommitFest. Why «begin»? As in previous years, the March review is going to be a long one: the final CommitFest of the cycle is where many of the most important changes land. Such a review is hard not only to write but also to read all the way through 🙂. That’s why this time it’s split into four articles.

The first article covers everything related to query optimization, in other words, the topics of our QPT training course. The second will focus on changes more relevant to the DBA1 and DBA2 courses. The third will cover DBA3 and DBS. The fourth will look at new SQL features, as well as changes related to the DEV1 and DEV2 courses.

RevertFest

But first, let’s look at what won’t make it into version 19. An impressive number of features were committed to version 19 before the feature freeze, only to be reverted before the release:

At the time of writing, not all open items have been resolved, and the release is tentatively scheduled for October 29. So the list of new features may shrink further.

CommitFest

With that caveat in mind, let’s move on to the changes related to query optimization. Here’s what’s covered:

  • Query plan stabilization and plan advice
  • auto_explain: logging EXPLAIN options added by extensions
  • EXPLAIN (analyze, timing): reducing timing overhead
  • Planner: IS DISTINCT FROM with non-nullable inputs
  • Planner: cardinality estimation for NOT IN (NULL, …) expressions
  • Planner: anti-join for NOT IN with a subquery
  • Planner: anti-join in queries with a left outer join
  • Extended statistics on virtual generated columns
  • postgres_fdw: importing statistics for foreign tables
  • JIT compilation is disabled by default

...