url="&commit_baseurl;d69d45a5a">§</ulink>
</para>
</listitem>
<!--
Author: Richard Guo <rguo@postgresql.org>
2024-07-30 [9b282a935] Fix partitionwise join with partially-redundant join cla
Author: Richard Guo <rguo@postgresql.org>
2024-07-29 [513f4472a] Reduce memory used by partitionwise joins
-->
<listitem>
<para>
Allow partitionwise joins in more cases, and reduce its memory usage (Richard Guo, Tom Lane, Ashutosh Bapat)
<ulink url="&commit_baseurl;9b282a935">§</ulink>
<ulink url="&commit_baseurl;513f4472a">§</ulink>
</para>
</listitem>
<!--
Author: Alexander Korotkov <akorotkov@postgresql.org>
2025-03-10 [fae535da0] Teach Append to consider tuple_fraction when accumulatin
-->
<listitem>
<para>
Improve cost estimates of partition queries (Nikita Malakhov, Andrei Lepikhov)
<ulink url="&commit_baseurl;fae535da0">§</ulink>
</para>
</listitem>
<!--
Author: Tom Lane <tgl@sss.pgh.pa.us>
2025-04-02 [0dca5d68d] Change SQL-language functions to use the plan cache.
Author: Tom Lane <tgl@sss.pgh.pa.us>
2025-04-17 [09b07c295] Minor performance improvement for SQL-language functions
-->
<listitem>
<para>
Improve SQL-language function plan caching (Alexander Pyhalov, Tom Lane)
<ulink url="&commit_baseurl;0dca5d68d">§</ulink>
<ulink url="&commit_baseurl;09b07c295">§</ulink>
</para>
</listitem>
<!--
Author: Robert Haas <rhaas@postgresql.org>
2024-08-21 [e22253467] Treat number of disabled nodes in a path as a separate c
-->
<listitem>
<para>
Improve handling of disabled optimizer features (Robert Haas)
<ulink url="&commit_baseurl;e22253467">§</ulink>
</para>
</listitem>
</itemizedlist>
</sect4>
<sect4 id="release-18-indexes">
<title>Indexes</title>
<itemizedlist>
<!--
Author: Peter Geoghegan <pg@bowt.ie>
2025-04-04 [92fe23d93] Add nbtree skip scan optimization.
Author: Peter Geoghegan <pg@bowt.ie>
2025-04-04 [8a510275d] Further optimize nbtree search scan key comparisons.
-->
<listitem>
<para>
Allow skip scans of btree indexes (Peter Geoghegan)
<ulink url="&commit_baseurl;92fe23d93">§</ulink>
<ulink url="&commit_baseurl;8a510275d">§</ulink>
</para>
<para>
This allows multi-column btree indexes to be used by queries that only
equality-reference the second or later indexed columns.
</para>
</listitem>
<!--
Author: Peter Eisentraut <peter@eisentraut.org>
2025-03-18 [f278e1fe3] Allow non-btree unique indexes for partition keys
Author: Peter Eisentraut <peter@eisentraut.org>
2025-03-18 [9d6db8bec] Allow non-btree unique indexes for matviews
-->
<listitem>
<para>
Allow non-btree unique indexes to be used as partition keys and in materialized views (Mark Dilger)
<ulink url="&commit_baseurl;f278e1fe3">§</ulink>
<ulink url="&commit_baseurl;9d6db8bec">§</ulink>
</para>
<para>
The index type must still support equality.
</para>
</listitem>
<!--
Author: Tomas Vondra <tomas.vondra@postgresql.org>
2025-03-03 [8492feb98] Allow parallel CREATE INDEX for GIN indexes
-->
<listitem>
<para>
Allow GIN indexes to be created in parallel (Tomas Vondra, Matthias van de Meent)
<ulink url="&commit_baseurl;8492feb98">§</ulink>
</para>
</listitem>
<!--
Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
2025-04-02 [e9e7b6604] Add GiST and btree sortsupport routines for range types
-->
<listitem>
<para>
Allow values to be sorted to speed rangetype GiST and btree index builds (Bernd Helmle)
<ulink url="&commit_baseurl;e9e7b6604">§</ulink>
</para>
</listitem>
</itemizedlist>
</sect4>
<sect4 id="release-18-performance">
<title>General Performance</title>
<itemizedlist>
<!--
Author: Andres Freund <andres@anarazel.de>
2025-03-17 [02844012b] aio: Basic subsystem initialization
Author: Andres Freund <andres@anarazel.de>
2025-03-17 [da7226993] aio: Add core asynchronous I/O infrastructure
Author: Andres Freund <andres@anarazel.de>
2025-03-18 [55b454d0e] aio: Infrastructure for io_method=worker
Author: Andres Freund <andres@anarazel.de>
2025-03-18