Re: First draft of PG 17 release notes

Laurenz Albe <laurenz.albe@cybertec.at>

From: Laurenz Albe <laurenz.albe@cybertec.at>
To: "Jonathan S. Katz" <jkatz@postgresql.org>, Bruce Momjian <bruce@momjian.us>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2024-09-20T20:13:57Z
Lists: pgsql-hackers

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Revert support for ALTER TABLE ... MERGE/SPLIT PARTITION(S) commands

  2. When creating materialized views, use REFRESH to load data.

  3. Revert temporal primary keys and foreign keys

  4. Avoid needless large memcpys in libpq socket writing

  5. Enhance nbtree ScalarArrayOp execution.

  6. Introduce a non-recursive JSON parser

  7. Combine freezing and pruning steps in VACUUM

  8. Allow SIGINT to cancel psql database reconnections.

  9. Provide API for streaming relation data.

  10. Add hash support functions and hash opclass for contrib/ltree.

  11. Pull up ANY-SUBLINK with the necessary lateral support.

  12. Read WAL directly from WAL buffers.

  13. Introduce the dynamic shared memory registry.

  14. Add macros for looping through a List without a ListCell.

  15. Support +/- infinity in the interval data type.

  16. Extend ALTER OPERATOR to allow setting more optimization attributes.

  17. Consider cheap startup paths in add_paths_to_append_rel

On Fri, 2024-09-20 at 13:47 -0400, Jonathan S. Katz wrote:
> Please see attached.

> +    <listitem>
> +     <para>
> +      Various query performance improvements, including to sequential reads
> +      using streaming I/O, write throughput under high concurrency, and
> +      searches over multiple values in a <link linkend="btree">btree</link>
> +      index.
> +     </para>
> +    </listitem>

Perhaps that last part could be "and searches over IN-lists in a b-tree index".
It might be technically less correct, but I'd expect that it gives more people
the right idea.

> +        <para>
> +         <link
> +          linkend="app-pgcreatesubscriber"><application>pg_createsubscriber</application></link>,
> +          a utility that logical replicas from physical standbys
> +        </para>

There's a verb missing: "a utility that *creates* logical replicas..."

> +        <para>
> +         <link
> +          linkend="pgupgrade"><application>pg_upgrade</application></link> now
> +          preserves replication slots on both publishers and subscribers
> +        </para>

I wonder if we should omit "on both publishers and subscribers".
It preserves replication slots anywhere, right?

> +    <listitem>
> +     <para>
> +      New client-side connection option, <link
> +      linkend="libpq-connect-sslnegotiation"><literal>sslnegotiation=direct</literal></link>,
> +      that allows direct TLS handshakes that avoids a round-trip negotation.
> +     </para>
> +    </listitem>

It should be "that avoid".  Plural.

Yours,
Laurenz Albe