Re: PG 16 draft release notes ready

Andres Freund <andres@anarazel.de>

From: Andres Freund <andres@anarazel.de>
To: Bruce Momjian <bruce@momjian.us>
Cc: PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2023-05-21T17:13:41Z
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 MAINTAIN privilege and pg_maintain predefined role.

  2. doc: PG 16 relnotes, remove "Have initdb use ICU by default"

  3. initdb: change default --locale-provider back to libc.

  4. doc: PG 16 relnotes, add author

  5. doc: PG 16 relnotes, move memory item and reword OUTER item

  6. doc: PG 16 relnotes, add memory overhead reduction item

  7. doc: PG 16 relnotes, adjust subscription origin mention

  8. doc: PG 16 relnotes, adjust auto_explain logging item

  9. doc: PG 16 relnotes: adjust outer/full hash join parallelization

  10. doc: PG 16 relnotes, fix duplicate author and commit

  11. doc: PG 16 relnotes, fix "locale" typo and windows locale text

  12. doc: PG 16 relnotes, add author from previous merge

  13. doc: PG 16 relnotes, wording adjustments

  14. doc: PG 16 relnotes, merge and move vector items

  15. doc: PG 16 relnotes, update xid/subxid searches item

  16. doc: PG 16 relnotes, SIMD improvements

  17. doc: PG 16 relnotes, add major features list

  18. doc: PG 16 relnotes, misc merged items and bootstrap detail

  19. doc: PG 16 relnotes, misc. updates

  20. doc: PG 16 relnotes, add commits

  21. Allow logical decoding on standbys

  22. Fix ts_headline() edge cases for empty query and empty search text.

  23. Add a hook for modifying the ldapbind password

  24. Rework design of functions in pg_walinspect

  25. initdb: derive encoding from locale for ICU; similar to libc.

  26. Doc: add XML ID attributes to <sectN> and <varlistentry> tags.

  27. Simplify the implementations of the to_reg* functions.

  28. Rename pg_dissect_walfile_name() to pg_split_walfile_name()

  29. Make materialized views participate in predicate locking

  30. Improve performance of and reduce overheads of memory management

  31. Allow grant-level control of role inheritance behavior.

Hi,

Thanks for the release notes!

> <!--
> Author: Andres Freund <andres@anarazel.de>
> 2023-04-06 [00d1e02be] hio: Use ExtendBufferedRelBy() to extend tables more eff
> Author: Andres Freund <andres@anarazel.de>
> 2023-04-06 [26158b852] Use ExtendBufferedRelTo() in XLogReadBufferExtended()
> -->
> 
> <listitem>
> <para>
> Allow more efficient addition of multiple heap and index pages (Andres Freund)
> </para>
> </listitem>

While the case of extending by multiple pages improved the most, even
extending by a single page at a time got a good bit more scalable. Maybe just
"Improve efficiency of extending relations"?


I think:

> <!--
> Author: Andres Freund <andres@anarazel.de>
> 2023-04-08 [0fdab27ad] Allow logical decoding on standbys
> -->
> 
> <listitem>
> <para>
> Allow logical decoding on standbys (Bertrand Drouvot, Andres Freund, Amit Khandekar)
> </para>
> </listitem>

pretty much includes:

> <!--
> Author: Andres Freund <andres@anarazel.de>
> 2023-04-07 [be87200ef] Support invalidating replication slots due to horizon an
> Author: Andres Freund <andres@anarazel.de>
> 2023-04-08 [26669757b] Handle logical slot conflicts on standby
> -->
> 
> <listitem>
> <para>
> Allow invalidation of replication slots due to row removal, wal_level, and conflicts (Bertrand Drouvot, Andres Freund, Amit Khandekar)
> </para>

as it is a prerequisite.

I'd probably also merge

> <!--
> Author: Andres Freund <andres@anarazel.de>
> 2023-04-08 [0fdab27ad] Allow logical decoding on standbys
> -->
> 
> <listitem>
> <para>
> Add function pg_log_standby_snapshot() to force creation of a WAL snapshot (Bertrand Drouvot)
> </para>
> 
> <para>
> WAL snapshots are required for logical slot creation so this function speeds their creation on standbys.
> </para>
> </listitem>

As there really isn't a use case outside of logical decoding on a standby.


> <!--
> Author: Andres Freund <andres@anarazel.de>
> 2022-07-17 [089480c07] Default to hidden visibility for extension libraries whe
> Author: Andres Freund <andres@anarazel.de>
> 2022-07-17 [8cf64d35e] Mark all symbols exported from extension libraries PGDLL
> -->
> 
> <listitem>
> <para>
> Prevent extension libraries from export their symbols by default (Andres Freund, Tom Lane)
> </para>
> </listitem>

s/export/exporting/?


Looking through the release notes, I didn't see an entry for

commit c6e0fe1f2a08505544c410f613839664eea9eb21
Author: David Rowley <drowley@postgresql.org>
Date:   2022-08-29 17:15:00 +1200
 
    Improve performance of and reduce overheads of memory management

even though I think that's one of the more impactful improvements. What was
the reason for leaving that out?

Greetings,

Andres Freund