public inbox for [email protected]
help / color / mirror / Atom feedFrom: Jonathan S. Katz <[email protected]>
To: PostgreSQL Hackers <[email protected]>
Subject: 2026-02-26 release announcement draft
Date: Sun, 22 Feb 2026 22:49:23 -0800
Message-ID: <[email protected]> (raw)
Hi,
Please see the draft of the 2026-02-26 release announcement. Please
review for inaccuracies.
For the additional steps related to the `json[b]_strip_nulls()` issue, I
primarily borrowed from the guidance in the release notes. For users who
already updated to PG < 18.3, I didn't think it'd be worthwhile to say
they should `pg_upgrade` to 18.3, given the post-update steps would be
much less disruptive. However, I'm open to other suggestions for how to
frame the guidance.
Thanks,
Jonathan
The PostgreSQL Global Development Group has released an update to all
supported versions of PostgreSQL, including 18.3, 17.9, 16.13, 15.17, and 14.22.
This is an out-of-cycle release that fixes [several regressions reported after the last update release](https://www.postgresql.org/about/news/out-of-cycle-release-scheduled-for-february-26-2026-3241/).
For the full list of changes, please review the [release notes](https://www.postgresql.org/docs/release/).
Bug Fixes and Improvements
--------------------------
This update fixes several bugs that were reported since the previous release. The issues listed below affect PostgreSQL 18. Some of these issues may also affect other supported versions of PostgreSQL.
* Fix issue where a standby would halt and return an error `"could not access status of transaction"`.
* Fix error where the [`substring()`](https://www.postgresql.org/docs/current/functions-string.html#id-1.5.8.10.5.2.2.17.1.1.1) function would raise an error `"invalid byte sequence for encoding"` on non-ASCII text values if the source of that value is a database column. This was due to a change introduced for the fix to [`CVE-2026-2006`](https://www.postgresql.org/support/security/CVE-2026-2006/).
* Fix for the `strict_word_similarity` function in [`pg_trgm`](https://www.postgresql.org/docs/current/pgtrgm.html) that could lead to incorrect output or crashes. This was due to an oversight in the fix for [CVE-2026-2007](https://www.postgresql.org/support/security/CVE-2026-2007/).
* Fix function volatility for `json_strip_nulls()` and `jsonb_strip_nulls()` to be immutable, like previous releases, allowing for them to be used in indexes. If you previously upgraded to PostgreSQL 18.0 through 18.2, see the additional steps in the "Updating" section.
* Fix for `NOT NULL` tests in `LATERAL UNION ALL` subquery that could lead to wrong query output.
* Avoid `NOT NULL` constraints from generating name conflicts with user-written constraints.
* Fix `pg_stat_get_backend_wait_event()` and `pg_stat_get_backend_wait_event_type()` to report values for auxiliary processes, similar to `pg_stat_activity`.
* Fix casting a composite-type variable to a domain type when returning its value from a PL/pgSQL function.
* Fix the [`hstore`](https://www.postgresql.org/docs/current/hstore.html) binary input function to avoid crashes on input with duplicate keys.
Updating
--------
All PostgreSQL update releases are cumulative. As with other minor releases, users are not required to dump and reload their database or use [`pg_upgrade`](https://www.postgresql.org/docs/current/pgupgrade.html) in order to apply this update release; you may simply shutdown PostgreSQL and update its binaries.
If you previously upgraded to PostgreSQL 18.0, 18.1 or 18.2, you need to execute the following SQL as a PostgreSQL superuser in all of your databases to make the `json_strip_nulls()` and `jsonb_strip_nulls()` functions immutable:
```
UPDATE pg_catalog.pg_proc SET provolatile = 'i' WHERE oid IN ('3261','3262');
```
You should also execute this command in the `template0` and `template1` databases so future databases you create in your PostgreSQL cluster have the correct function volatility setting.
Users who have skipped one or more update releases may need to run additional post-update steps; please see the release notes from earlier versions for details.
For more details, please see the [release notes](https://www.postgresql.org/docs/release/).
Links
-----
* [Download](https://www.postgresql.org/download/)
* [Release Notes](https://www.postgresql.org/docs/release/)
* [Security](https://www.postgresql.org/support/security/)
* [Versioning Policy](https://www.postgresql.org/support/versioning/)
* [Submit a Bug](https://www.postgresql.org/account/submitbug/)
* [Donate](https://www.postgresql.org/about/donate/)
If you have corrections or suggestions for this release announcement, please send them to the [email protected]_ public [mailing list](https://www.postgresql.org/list/).
Attachments:
[text/plain] 20260226updaterelease.md (3.9K, ../[email protected]/2-20260226updaterelease.md)
download | inline:
The PostgreSQL Global Development Group has released an update to all
supported versions of PostgreSQL, including 18.3, 17.9, 16.13, 15.17, and 14.22.
This is an out-of-cycle release that fixes [several regressions reported after the last update release](https://www.postgresql.org/about/news/out-of-cycle-release-scheduled-for-february-26-2026-3241/).
For the full list of changes, please review the [release notes](https://www.postgresql.org/docs/release/).
Bug Fixes and Improvements
--------------------------
This update fixes several bugs that were reported since the previous release. The issues listed below affect PostgreSQL 18. Some of these issues may also affect other supported versions of PostgreSQL.
* Fix issue where a standby would halt and return an error `"could not access status of transaction"`.
* Fix error where the [`substring()`](https://www.postgresql.org/docs/current/functions-string.html#id-1.5.8.10.5.2.2.17.1.1.1) function would raise an error `"invalid byte sequence for encoding"` on non-ASCII text values if the source of that value is a database column. This was due to a change introduced for the fix to [`CVE-2026-2006`](https://www.postgresql.org/support/security/CVE-2026-2006/).
* Fix for the `strict_word_similarity` function in [`pg_trgm`](https://www.postgresql.org/docs/current/pgtrgm.html) that could lead to incorrect output or crashes. This was due to an oversight in the fix for [CVE-2026-2007](https://www.postgresql.org/support/security/CVE-2026-2007/).
* Fix function volatility for `json_strip_nulls()` and `jsonb_strip_nulls()` to be immutable, like previous releases, allowing for them to be used in indexes. If you previously upgraded to PostgreSQL 18.0 through 18.2, see the additional steps in the "Updating" section.
* Fix for `NOT NULL` tests in `LATERAL UNION ALL` subquery that could lead to wrong query output.
* Avoid `NOT NULL` constraints from generating name conflicts with user-written constraints.
* Fix `pg_stat_get_backend_wait_event()` and `pg_stat_get_backend_wait_event_type()` to report values for auxiliary processes, similar to `pg_stat_activity`.
* Fix casting a composite-type variable to a domain type when returning its value from a PL/pgSQL function.
* Fix the [`hstore`](https://www.postgresql.org/docs/current/hstore.html) binary input function to avoid crashes on input with duplicate keys.
Updating
--------
All PostgreSQL update releases are cumulative. As with other minor releases, users are not required to dump and reload their database or use [`pg_upgrade`](https://www.postgresql.org/docs/current/pgupgrade.html) in order to apply this update release; you may simply shutdown PostgreSQL and update its binaries.
If you previously upgraded to PostgreSQL 18.0, 18.1 or 18.2, you need to execute the following SQL as a PostgreSQL superuser in all of your databases to make the `json_strip_nulls()` and `jsonb_strip_nulls()` functions immutable:
```
UPDATE pg_catalog.pg_proc SET provolatile = 'i' WHERE oid IN ('3261','3262');
```
You should also execute this command in the `template0` and `template1` databases so future databases you create in your PostgreSQL cluster have the correct function volatility setting.
Users who have skipped one or more update releases may need to run additional post-update steps; please see the release notes from earlier versions for details.
For more details, please see the [release notes](https://www.postgresql.org/docs/release/).
Links
-----
* [Download](https://www.postgresql.org/download/)
* [Release Notes](https://www.postgresql.org/docs/release/)
* [Security](https://www.postgresql.org/support/security/)
* [Versioning Policy](https://www.postgresql.org/support/versioning/)
* [Submit a Bug](https://www.postgresql.org/account/submitbug/)
* [Donate](https://www.postgresql.org/about/donate/)
If you have corrections or suggestions for this release announcement, please send them to the [email protected]_ public [mailing list](https://www.postgresql.org/list/).
[application/pgp-signature] OpenPGP_signature.asc (840B, ../[email protected]/3-OpenPGP_signature.asc)
download
view thread (2+ messages)
reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: [email protected]
Cc: [email protected], [email protected]
Subject: Re: 2026-02-26 release announcement draft
In-Reply-To: <[email protected]>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox