Release notes for 18.3, 17.9, 16.13, 15.17, 14.22.

This commit is contained in:
Tom Lane 2026-02-22 12:22:41 -05:00
parent bcaf1b5101
commit 494f9f58a8

View file

@ -1,6 +1,200 @@
<!-- doc/src/sgml/release-17.sgml -->
<!-- See header comment in release.sgml about typical markup -->
<sect1 id="release-17-9">
<title>Release 17.9</title>
<formalpara>
<title>Release date:</title>
<para>2026-02-26</para>
</formalpara>
<para>
This release contains a small number of fixes from 17.8.
For information about new features in major release 17, see
<xref linkend="release-17"/>.
</para>
<sect2 id="release-17-9-migration">
<title>Migration to Version 17.9</title>
<para>
A dump/restore is not required for those running 17.X.
</para>
<para>
However, if you are upgrading from a version earlier than 17.6,
see <xref linkend="release-17-6"/>.
</para>
</sect2>
<sect2 id="release-17-9-changes">
<title>Changes</title>
<itemizedlist>
<listitem>
<!--
Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
Branch: REL_18_STABLE [817f74600] 2026-02-16 17:16:59 +0200
Branch: REL_17_STABLE [4a36c89f1] 2026-02-16 17:18:17 +0200
Branch: REL_16_STABLE [23064542f] 2026-02-16 17:20:29 +0200
Branch: REL_15_STABLE [899de38d8] 2026-02-16 17:20:51 +0200
Branch: REL_14_STABLE [547a8aaa7] 2026-02-16 17:20:56 +0200
-->
<para>
Fix failure after replaying a multixid truncation record from WAL
that was generated by an older minor version (Heikki Linnakangas)
<ulink url="&commit_baseurl;4a36c89f1">&sect;</ulink>
</para>
<para>
Erroneous logic for coping with the way that previous versions
handled multixid wraparound led to replay failure, with messages
like <quote>could not access status of transaction</quote>.
A typical scenario in which this could occur is a standby server of
the latest minor version consuming WAL from a primary server of an
older version.
</para>
</listitem>
<listitem>
<!--
Author: Noah Misch <noah@leadboat.com>
Branch: master [9f4fd119b] 2026-02-14 12:16:16 -0800
Branch: REL_18_STABLE [6e045e1a6] 2026-02-14 12:16:19 -0800
Branch: REL_17_STABLE [5d5232bc3] 2026-02-14 12:16:20 -0800
Branch: REL_16_STABLE [bdfb37228] 2026-02-14 12:16:20 -0800
Branch: REL_15_STABLE [a20eb248c] 2026-02-14 12:16:21 -0800
Branch: REL_14_STABLE [14b1fd617] 2026-02-14 12:16:21 -0800
Branch: master [8cef93d8a] 2026-02-16 18:04:58 -0800
Branch: REL_18_STABLE [d04b34d68] 2026-02-16 18:05:01 -0800
Branch: REL_17_STABLE [50d361f62] 2026-02-16 18:05:02 -0800
Branch: REL_16_STABLE [2280ab354] 2026-02-16 18:05:02 -0800
Branch: REL_15_STABLE [ec86152e0] 2026-02-16 18:05:02 -0800
Branch: REL_14_STABLE [a0769e74d] 2026-02-16 18:05:03 -0800
Branch: master [4644f8b23] 2026-02-14 12:16:16 -0800
Branch: REL_18_STABLE [4174e41b9] 2026-02-14 12:16:19 -0800
Branch: REL_17_STABLE [8e73530f1] 2026-02-14 12:16:20 -0800
Branch: REL_16_STABLE [45eb47230] 2026-02-14 12:16:20 -0800
Branch: REL_15_STABLE [5b305ebcc] 2026-02-14 12:16:20 -0800
Branch: REL_14_STABLE [44fc85bbf] 2026-02-14 12:16:21 -0800
-->
<para>
Avoid incorrect complaint of invalid encoding
when <function>substring()</function> is applied
to <quote>toasted</quote> data (Noah Misch)
<ulink url="&commit_baseurl;5d5232bc3">&sect;</ulink>
<ulink url="&commit_baseurl;50d361f62">&sect;</ulink>
<ulink url="&commit_baseurl;8e73530f1">&sect;</ulink>
</para>
<para>
The fix for CVE-2026-2006 was too aggressive and could raise an
error about an incomplete character in cases that are actually
valid.
</para>
</listitem>
<listitem>
<!--
Author: Richard Guo <rguo@postgresql.org>
Branch: master [691977d37] 2026-02-20 17:57:53 +0900
Branch: REL_18_STABLE [ed57c207c] 2026-02-20 18:00:02 +0900
Branch: REL_17_STABLE [bcaf1b510] 2026-02-20 18:01:56 +0900
Branch: REL_16_STABLE [ec20a4552] 2026-02-20 18:04:26 +0900
-->
<para>
Fix computation of the set of potentially-nulling outer joins for
the output of a <literal>LATERAL UNION ALL</literal> subquery
(Richard Guo)
<ulink url="&commit_baseurl;bcaf1b510">&sect;</ulink>
</para>
<para>
This error could lead to skipping <literal>NOT NULL</literal> tests
in the mistaken belief that they were unnecessary, resulting in
wrong query output.
</para>
</listitem>
<listitem>
<!--
Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
Branch: master [78a5e3074] 2026-02-11 18:50:57 +0200
Branch: REL_18_STABLE [53463b4b2] 2026-02-11 18:51:06 +0200
Branch: REL_17_STABLE [842473337] 2026-02-11 18:51:12 +0200
Branch: REL_16_STABLE [2332911ae] 2026-02-11 18:51:19 +0200
Branch: REL_15_STABLE [ebc53ca7b] 2026-02-11 18:51:25 +0200
Branch: REL_14_STABLE [82b495cdd] 2026-02-11 18:51:32 +0200
-->
<para>
Fix <function>pg_stat_get_backend_wait_event()</function>
and <function>pg_stat_get_backend_wait_event_type()</function>
to report values for auxiliary processes (Heikki Linnakangas)
<ulink url="&commit_baseurl;842473337">&sect;</ulink>
</para>
<para>
Previously these functions returned NULL for auxiliary processes,
but that's inconsistent with
the <structname>pg_stat_activity</structname> view.
</para>
</listitem>
<listitem>
<!--
Author: Tom Lane <tgl@sss.pgh.pa.us>
Branch: master [9863c9075] 2026-02-11 16:53:14 -0500
Branch: REL_18_STABLE [ce4b7e3a1] 2026-02-11 16:53:14 -0500
Branch: REL_17_STABLE [dfd850980] 2026-02-11 16:53:14 -0500
Branch: REL_16_STABLE [c66f4cff1] 2026-02-11 16:53:14 -0500
Branch: REL_15_STABLE [254b15cbf] 2026-02-11 16:53:14 -0500
Branch: REL_14_STABLE [2b93d3820] 2026-02-11 16:53:14 -0500
-->
<para>
Fix casting a composite-type variable to a domain type when
returning its value from a PL/pgSQL function (Tom Lane)
<ulink url="&commit_baseurl;dfd850980">&sect;</ulink>
</para>
<para>
If the variable's value is NULL, a <quote>cache lookup failed for
type 0</quote> error resulted.
</para>
</listitem>
<listitem>
<!--
Author: Michael Paquier <michael@paquier.xyz>
Branch: master [a6f823e77] 2026-02-17 08:41:26 +0900
Branch: REL_18_STABLE [4a0843c53] 2026-02-17 08:41:30 +0900
Branch: REL_17_STABLE [0dfbe42da] 2026-02-17 08:41:32 +0900
Branch: REL_16_STABLE [31d0b917d] 2026-02-17 08:41:34 +0900
Branch: REL_15_STABLE [63c05e03b] 2026-02-17 08:41:35 +0900
Branch: REL_14_STABLE [f604cc695] 2026-02-17 08:41:37 +0900
-->
<para>
Fix potential null pointer dereference
in <filename>contrib/hstore</filename>'s binary input function
(Michael Paquier)
<ulink url="&commit_baseurl;0dfbe42da">&sect;</ulink>
</para>
<para>
<type>hstore</type>'s receive function crashed on input containing
duplicate keys. <type>hstore</type> values generated by Postgres
would never contain duplicate keys, so this mistake has gone
unnoticed. The crash could be provoked by malicious or corrupted
data.
</para>
</listitem>
</itemizedlist>
</sect2>
</sect1>
<sect1 id="release-17-8">
<title>Release 17.8</title>