On Mon, May 10, 2021 at 09:00:05AM -0500, Justin Pryzby wrote: > Thanks for putting it together. > > I think these two should be merged: > | Remove containment operators @ and ~ from contrib modules cube, hstore, > intarray, and seg (Justin Pryzby) > | Remove deprecated containment operators for built-in geometry data types > (Justin Pryzby)
Agreed, merged. > > | Improve autovacuum's analyze of partitioned tables (Yuzuko Hosoya) > | DETAILS? > > Should say: Autovacuum now analyzes partitioned tables. Agreed, updated. > | The server variable check_client_connection_interval allows supporting > operating systems, e.g., Linux, to automatically cancel queries by > disconnected clients. > The GUC is actually called client_connection_check_interval - the commit > message used the wrong name. OK, fixed. > | This is particularly helpful for reducing index bloat on tables that > frequently update indexed columns. > Does it mean "..where indexed columns are frequently updated"? Yeah, that needs help. ;-) I updated it to : This is particularly helpful for reducing index bloat on tables whose indexed columns are frequently updated. > | Allow multiple foreign table scans to be run in parallel (Robert Haas, > Kyotaro Horiguchi, Thomas Munro, Etsuro Fujita) > I think it means multiple foreight table scan *nodes* How is this? Allow a query referencing multiple foreign tables to perform foreign table scans in parallel (Robert Haas, Kyotaro Horiguchi, Thomas Munro, Etsuro Fujita) I am worried "nodes" is too vague. > | If server variable compute_query_id is enabled, display the hash in > pg_stat_activity, EXPLAIN VERBOSE, csvlog, and optionally in log_line_prefix > (Julien Rouhaud) > I think needs details, like: "If disabled, then the hash might be computed by > an extension, instead". I ended up with: <para> If server variable compute_query_id is enabled, display the hash in pg_stat_activity, EXPLAIN VERBOSE, csvlog, and optionally in log_line_prefix (Julien Rouhaud) </para> <para> A query id computed by an extension will also be displayed. </para> > Later, you say: > | Extension pg_stat_statements will need to enable hash computation via the > compute_query_id server variable to function properly. pg_stat_statements can > now use a custom hash computation method. > Maybe it should say "will need hash computation to be enabled". Here is the updated entry: <listitem> <!-- Author: Bruce Momjian <br...@momjian.us> 2021-04-07 [5fd9dfa5f] Move pg_stat_statements query jumbling to core. --> <para> Move query hash computation from pg_stat_statements to the core server (Julien Rouhaud) </para> <para> Extension pg_stat_statements will now need to enable query hash computation to function properly. This can be done by enabling the server variable compute_query_id or by using an extension with a custom hash computation method. </para> </listitem> > | Allow more than the common name (CN) to be matched for client certificate > authentication (Andrew Dunstan) > Your description makes it sound like arbitrary attributes can be compared. > But > the option just allows comparing CN or DN. OK, new text is: <listitem> <!-- Author: Andrew Dunstan <and...@dunslane.net> 2021-03-29 [6d7a6feac] Allow matching the DN of a client certificate for authen --> <para> Allow the certificate's distinguished name (DN) to be matched for client certificate authentication (Andrew Dunstan) </para> <para> The new pg_hba.conf keyword "clientname=DN" allows comparison with non-CN certificate attributes and can be combined with ident maps. </para> </listitem> > | Allow file system sync at the start of crash recovery on Linux (Thomas > Munro) > I think this should describe the existing, default behavior: > Allow syncfs method to sync data directory during recovery; > The default behavior is to open and fsync every data file, and the new setting > recovery_init_sync_method=syncfs instead syncs each filesystem in the data > directory. I went with this text: <listitem> <!-- Author: Thomas Munro <tmu...@postgresql.org> 2021-03-20 [61752afb2] Provide recovery_init_sync_method=syncfs. --> <para> Allow file system sync at the start of crash recovery on Linux (Thomas Munro) </para> <para> By default, Postgres opens and fsyncs every data file at the start of crash recovery. This new setting, recovery_init_sync_method=syncfs, instead syncs each filesystem used by the database cluster. This allows for faster recovery on systems with many database files. </para> </listitem> > | Add date_bin function (John Naylor) > This truncate timestamps on an arbitrary interval. > Like date_trunc() but also supports eg. '15 minutes', and also uses an > arbitrary "origin". OK, so what I think it returns is the greatest datetime that is a multiple of interval values added to origin which is not greater than the target date, right? Am I the only one who finds this unclear? Doesn't our documentation of this feature need to explain this? > | Support negative indexes in split_part() (Nikhil Benesch) > | Negative values count from the last field going forward. > should say "start from the last field and count backward" ? Yes, fixed with your wording. > | Add configure option --with-openssl to behave like --with-ssl={openssl} > (Daniel Gustafsson, Michael Paquier) > | The option --with-openssl is kept for compatibility. > I think this is backwards. The new option is with-ssl=openssl, and (as you > said) with-openssl is kept. Agreed: Add configure option --with-ssl={openssl} to behave like --with-openssl (Daniel Gustafsson, Michael Paquier) > Should these be in the "compatibility" section? > > | Force custom server variable names to match the pattern used for unquoted > SQL identifiers (Tom Lane) Yes. > | Change password_encryption's default to scram-sha-256 (Peter Eisentraut) Yes, I can see this impacting people. I move it and added text to highlight the incompatibility: <listitem> <!-- Author: Peter Eisentraut <pe...@eisentraut.org> 2020-06-10 [c7eab0e97] Change default of password_encryption to scram-sha-256 --> <para> Change password_encryption's default to scram-sha-256 (Peter Eisentraut) </para> <para> Previously it was md5. All new passwords will be stored as SHA256 unless this server variable is changed or the password is already md5-hashed. </para> </listitem> > > | Change checkpoint_completion_target default to 0.9 (Stephen Frost) I don' think that is an incompatibility since it only affects performance, and can be easily changed. > | Reduce the default value of vacuum_cost_page_miss (Peter Geoghegan) > > Nitpicks to follow: > > | Allow some GiST index to be built by presorting the data (Andrey Borodin) > indexes Fixed. > | with --with-lz4 support to enable this feature > I would change to say "to support" rather than "support to enable" Yes, better. > | Speed truncation of small tables on large shared buffer servers (Kirk > Jamison) > "on servers with large settings of shared_buffers" I went with: Speed truncation of small tables on clusters with a large number of shared buffers (Kirk Jamison) > | Allow windowing functions to perform incremental sorts (David Rowley) > Just "window" functions OK, fixed. > | Improve pg_stat_activity reporting for walsenders processes (Tom Lane) > walsender Fixed. > | Previously these functions could only be executed by super-users, and still > defaults do that. > ..which is still the default behavior. Updated to: Previously these functions could only be executed by super-users, and this is still the default. > | This allows multiple queries to be send and only wait for completion when a > specific synchronization message is sent. > be sent Fixed. > | Enhance libpq libpq's target_session_attrs parameter options (Haribabu > Kommi, Greg Nancarrow, Vignesh C, Tom Lane) > remove first "libpq" Fixed. > | With the removal of the ! operator in this release, factorial() is the only > built-in way to computer a factorial. > compute Fixed. > | For example, GROUP BY CUBE (a,b), CUBE (b,c) will generated duplicate > grouping combinations without DISTINCT. > > will generate Fixed. > | Allow VACUUM VERBOSE to report page deletion counts for each scan of an > index (Peter Geoghegan) > > I think "Allow" is wrong - should just say that VACUUM VERBOSE reports.. Updated to: Have VACUUM VERBOSE report page deletion counts for each scan of an index (Peter Geoghegan) > |By default, only the root of partitioned tables are imported. > *is* imported Fixed. > Can these be merged: > Allow logical replication to stream long transactions to standbys (Dilip > Kumar, Tomas Vondra, Amit Kapila, Nikhil Sontakke) > Improve the logical replication API to allow streaming large in-progress > transactions (Tomas Vondra, Dilip Kumar, Amit Kapila) I am not sure. I do think we need to merge some of the logical replication items, but I am not sure which ones yet. Thanks for all the good feedback. -- Bruce Momjian <br...@momjian.us> https://momjian.us EDB https://enterprisedb.com If only the physical world exists, free will is an illusion.