Re: PG 16 draft release notes ready

Bruce Momjian <bruce@momjian.us>

From: Bruce Momjian <bruce@momjian.us>
To: "Drouvot, Bertrand" <bertranddrouvot.pg@gmail.com>
Cc: PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2023-05-21T00:53:52Z
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.

On Sat, May 20, 2023 at 10:37:58AM +0200, Drouvot, Bertrand wrote:
> It's the snapshot of running transactions (aka the xl_running_xacts WAL record) that is used during the
> logical slot creation to determine if the logical decoding find a consistent state to start with.
> 
> On a primary this WAL record is being emitted during the logical slot creation, but on a standby
> we can't write WAL records (so we are waiting for the primary to emit it).
> 
> Outside of logical slot creation, this WAL record is also emitted during checkpoint or periodically
> by the bgwriter.
> 
> What about?
> 
> This adds the function pg_log_standby_snapshot() to emit the WAL record that contains the list
> of running transactions.
> 
> If the primary is idle, the logical slot creation on a standby can take a while (waiting for this WAL record
> to be replayed to determine if the logical decoding find a consistent state to start with).
> 
> In that case, this new function can be used on the primary to speed up the logical slot
> creation on the standby.

Okay, this helps.  I split the entry into two with this text:

	<!--
	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>
	
	<!--
	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>

-- 
  Bruce Momjian  <bruce@momjian.us>        https://momjian.us
  EDB                                      https://enterprisedb.com

  Only you can decide what is important to you.