On Mon, Jul 18, 2022 at 08:23:23PM -0500, Justin Pryzby wrote:
> > Increase hash_mem_multiplier default to 2.0 (Peter Geoghegan)
> > This allows query hash operations to use double the amount of work_mem
> > memory as other operations.
>
> I wonder if it's worth pointing out that a query may end up using not just 2x
> more memory (since work_mem*hash_mem_multiplier is per node), but 2**N more,
> for N nodes.
Uh, I said "per operation" so people might realize there can be multiple
work_mem memory operations per query. I don't think I can do more in
this text. I can't think of a way to improve it without making it more
confusing.
> > Remove pg_dump's --no-synchronized-snapshots option since all supported
> > server versions support synchronized snapshots (Tom Lane)
>
> It'd be better to put that after the note about dropping support for upgrading
> clusters older than v9.2 in psql/pg_dump/pg_upgrade.
Well, I put the --no-synchronized-snapshots item in incompatibilities
since it is a user-visible change that might require script adjustments.
However, I put the limit of pg_dump to 9.2 and greater into the pg_dump
section. Are you suggesting I move the--no-synchronized-snapshots item
down there? That doesn't match with the way I have listed other
incompatibilities so I am resistant to do that.
> > Enable system and TOAST btree indexes to efficiently store duplicates
> > (Peter Geoghegan)
>
> Say "btree indexes on system [and TOAST] tables"
Okay, updated to:
Allow btree indexes on system and TOAST tables to efficiently
store duplicates (Peter Geoghegan)
> > Prevent changes to columns only indexed by BRIN indexes from disabling HOT
> > updates (Josef Simanek)
>
> This was reverted
Ah, yes, removed.
> > Generate periodic log message during slow server starts (Nitin Jadhav,
> > Robert Haas)
> messages plural
>
> > Messages report the cause of the delay. The time interval for notification
> > is controlled by the new server variable log_startup_progress_interval.
> *The messages
Ah, yes, fixed.
> > Add server variable shared_memory_size to report the size of allocated
> > shared memory (Nathan Bossart)
> > Add server variable shared_memory_size_in_huge_pages to report the number
> > of huge memory pages required (Nathan Bossart)
>
> Maybe these should say server *parameter* since they're not really "variable".
Uh, I think of parameters as something passed. We do call them server
variables, or read-only server variables. I can add "read-only" but it
seems odd.
> > 0. Add support for LZ4 and Zstandard compression of server-side base
> > backups (Jeevan Ladhe, Robert Haas)
> > 1. Allow pg_basebackup to use LZ4 and Zstandard compression on server-side
> > base backup files (Dipesh Pandit, Jeevan Ladhe)
> > 2. Allow pg_basebackup's --compress option to control the compression
> > method and options (Michael Paquier, Robert Haas)
> > New options include server-gzip (gzip on the server), client-gzip (same
> > as gzip).
> > 3. Allow pg_basebackup to compress on the server side and decompress on the
> > client side before storage (Dipesh Pandit)
> > This is accomplished by specifying compression on the server side and
> > plain output format.
>
> I still think these expose the incremental development rather than the
> user-facing change.
Well, they are in different parts of the system, though they are clearly
all related. I am afraid merging them would be even more confusing.
> 1. It seems wrong to say "server-side" since client-side compression with
> LZ4/zstd is also supported.
Agreed. I changed it to:
Allow pg_basebackup to do LZ4 and Zstandard server-side compression
on base backup files (Dipesh Pandit, Jeevan Ladhe)
> 2. It's confusing to say that the new options are server-gzip and client-gzip,
> since it just mentioned new algorithms;
I see your point since there will be new options for LZ4 and Zstandard
too, so I just removed that paragraph.
> 3. I'm not sure this needs to be mentioned at all; maybe it should be a
> "detail" following the item about server-side compression.
See my concerns above --- it seems too complex to merge into something
else. However, I am open to an entire rewrite of these items.
> > Tables added to the listed schemas in the future will also be replicated.
>
> "Tables later added" is clearer. Otherwise "in the future" sounds like maybe
> in v16 or v17 we'll start replicating those tables.
Agreed, new wording:
Tables added later to the listed schemas will also be replicated.
> > Allow subscribers to stop logical replication application on error (Osumi
> > Takamichi, Mark Dilger)
> "application" sounds off.
Agreed. New text is:
Allow subscribers to stop the application of logical replication
changes on error
> > Add new default WAL-logged method for database creation (Dilip Kumar)
> "New default" sounds off. Say "Add new WAL-logged method for database
> creation, used by default".
Agreed, new text:
Add new <acronym>WAL</acronym>-logged method for <link
linkend="sql-createdatabase">database creation</link> (Dilip Kumar)
This is the new default for database creation and avoids the need
for checkpoints during database creation; the old method is still
available.
> > Have pg_upgrade preserve relfilenodes, tablespace, and database OIDs
> > between old and new clusters (Shruthi KC, Antonin Houska)
>
> "tablespace OIDs" or "tablespace and database OIDs and relfilenodes"
Good point, I went with:
Have <application>pg_upgrade</application> preserve tablespace
and database OIDs, and relfilenodes between old and new clusters
(Shruthi KC, Antonin Houska)
> > Limit support of pg_upgrade to old servers running PostgreSQL 9.2 and later
> > (Tom Lane)
>
> The word "old" doesn't appear in the 2 release notes items about pg_dump and
> psql, and "old" makes it sound sounds like "antique" rather than "source".
Uh, so pg_upgrade uses the terms "old" and "new" in its option names,
e.g., oldbindir, newbindir. I don't think "source" would be an
improvement here.
> > Some internal-use-only types have also been assigned this column.
> this *value
Good point, I went with:
Some other internal-use-only values have also been assigned to
this column.
> > Allow custom scan provders to indicate if they support projections (Sven
> > Klemm)
> > The default is now that custom scan providers can't support projections, so
> > they need to be updated for this release.
>
> Per the commit message, they don't "need" to be updated.
> I think this should say "The default now assumes that a custom scan provider
> does not support projections; to retain optimal performance, they should be
> updated to indicate whether that's supported.
Okay, I went with this text:
The default is now that custom scan providers are assumed to not
support projections; those that do need to be updated for this
release.
Cumulative applied patch attached.
--
Bruce Momjian <[email protected]> https://momjian.us
EDB https://enterprisedb.com
Indecision is a decision. Inaction is an action. Mark Batterson
diff --git a/doc/src/sgml/release-15.sgml b/doc/src/sgml/release-15.sgml
index cde78b6181..dfa3c74535 100644
--- a/doc/src/sgml/release-15.sgml
+++ b/doc/src/sgml/release-15.sgml
@@ -538,13 +538,14 @@ Author: Tom Lane <[email protected]>
<listitem>
<para>
- Allow <link linkend="custom-scan">custom scan provders</link>
+ Allow <link linkend="custom-scan">custom scan providers</link>
to indicate if they support projections (Sven Klemm)
</para>
<para>
- The default is now that custom scan providers can't support
- projections, so they need to be updated for this release.
+ The default is now that custom scan providers are assumed to not
+ support projections; those that do need to be updated for this
+ release.
</para>
</listitem>
@@ -730,9 +731,9 @@ Author: Peter Geoghegan <[email protected]>
<listitem>
<para>
- Enable system and <link
- linkend="storage-toast"><acronym>TOAST</acronym></link> btree
- indexes to efficiently store duplicates (Peter Geoghegan)
+ Allow btree indexes on system and <link
+ linkend="storage-toast"><acronym>TOAST</acronym></link>
+ tables to efficiently store duplicates (Peter Geoghegan)
</para>
<para>
@@ -753,19 +754,6 @@ Author: Alexander Korotkov <[email protected]>
</para>
</listitem>
-<!--
-Author: Tomas Vondra <[email protected]>
-2021-11-30 [5753d4ee3] Ignore BRIN indexes when checking for HOT udpates
--->
-
- <listitem>
- <para>
- Prevent changes to columns only indexed by <link
- linkend="brin"><acronym>BRIN</acronym></link> indexes from
- disabling <acronym>HOT</acronym> updates (Josef Simanek)
- </para>
- </listitem>
-
<!--
Author: Peter Eisentraut <[email protected]>
2022-02-03 [94aa7cc5f] Add UNIQUE null treatment option
@@ -1085,7 +1073,7 @@ Author: Alvaro Herrera <[email protected]>
</para>
<para>
- Messages report the cause of the delay. The time interval for
+ The messages report the cause of the delay. The time interval for
notification is controlled by the new server variable <link
linkend="guc-log-startup-progress-interval"><varname>log_startup_progress_interval</varname></link>.
</para>
@@ -1488,7 +1476,7 @@ Author: Amit Kapila <[email protected]>
linkend="sql-createpublication"><command>CREATE PUBLICATION pub1
FOR ALL TABLES IN SCHEMA s1,s2;</command></link> <command>ALTER
PUBLICATION</command> supports a similar syntax. Tables added
- to the listed schemas in the future will also be replicated.
+ later to the listed schemas will also be replicated.
</para>
</listitem>
@@ -1614,7 +1602,7 @@ Author: Amit Kapila <[email protected]>
<listitem>
<para>
- Allow subscribers to stop logical replication application on error
+ Allow subscribers to stop the application of logical replication changes on error
(Osumi Takamichi, Mark Dilger)
</para>
@@ -1752,13 +1740,14 @@ Author: Robert Haas <[email protected]>
<listitem>
<para>
- Add new default <acronym>WAL</acronym>-logged method for <link
+ Add new <acronym>WAL</acronym>-logged method for <link
linkend="sql-createdatabase">database creation</link> (Dilip Kumar)
</para>
<para>
- This avoids the need for checkpoints during database creation;
- the old method is still available.
+ This is the new default for database creation and avoids the need
+ for checkpoints during database creation; the old method is still
+ available.
</para>
</listitem>
@@ -2510,8 +2499,8 @@ Author: Robert Haas <[email protected]>
<listitem>
<para>
- Allow <application>pg_basebackup</application> to use LZ4 and
- Zstandard compression on server-side base backup files (Dipesh
+ Allow <application>pg_basebackup</application> to do LZ4 and
+ Zstandard server-side compression on base backup files (Dipesh
Pandit, Jeevan Ladhe)
</para>
</listitem>
@@ -2531,12 +2520,6 @@ Author: Robert Haas <[email protected]>
<option>--compress</option> option to control the compression
method and options (Michael Paquier, Robert Haas)
</para>
-
- <para>
- New options include <literal>server-gzip</literal> (gzip
- on the server), <literal>client-gzip</literal> (same as
- <literal>gzip</literal>).
- </para>
</listitem>
<!--
@@ -2799,8 +2782,8 @@ Author: Robert Haas <[email protected]>
<listitem>
<para>
- Have <application>pg_upgrade</application> preserve relfilenodes,
- tablespace, and database OIDs between old and new clusters
+ Have <application>pg_upgrade</application> preserve tablespace
+ and database OIDs, and relfilenodes between old and new clusters
(Shruthi KC, Antonin Houska)
</para>
</listitem>
@@ -3009,7 +2992,7 @@ Author: Tom Lane <[email protected]>
</para>
<para>
- Some internal-use-only types have also been assigned this column.
+ Some other internal-use-only values have also been assigned to this column.
</para>
</listitem>