From: Justin Pryzby <pryzby@telsasoft.com>
To: Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
To: Peter Geoghegan <pg@bowt.ie>
Cc: Amit Kapila <amit.kapila16@gmail.com>
Cc: Bruce Momjian <bruce@momjian.us>
Cc: pgsql-hackers@postgresql.org
Subject: Re: PG 13 release notes, first draft
Date: Mon, 7 Sep 2020 08:40:26 -0500
Message-ID: <20200907134026.GC7158@telsasoft.com> (raw)
In-Reply-To: <20200514211006.GM18456@telsasoft.com>
References: <CAH2-WzmMq+53zOn+6VDhSHj2pa9mn0MLGx1KE3u38sP=0ObD9g@mail.gmail.com>
<08a50ae9-89fe-a29b-c4e4-0fb5033c2f06@2ndquadrant.com>
<20200514211006.GM18456@telsasoft.com>
There's some obvious improvements for which I include a patch.
>Add alternate version of jsonb_setI() with special NULL handling (Andrew Dunstan)
>The new function, jsonb_set_lax(), allows null new values to either set the specified key to JSON null, delete the key, raise exception, or ignore the operation.
jsonb_set()
raise *an* exception
new null values?
>IS 'return_target' CLEAR?
I haven't used these before, but following the examples, it seems to return the
"target" argument, unchanged.
| Add function min_scale() that returns the number of digits to the right the decimal point that is required to represent the numeric value with full precision (Pavel Stehule)
right *of*
that *are* required ?
|The old function names were kept for backward compatibility. DO WE HAVE NEW NAMES?
=> I think the docs are clear:
> In releases of PostgreSQL before 13 there was no xid8 type, so variants of these functions were provided that used bigint to represent a 64-bit XID, with a correspondingly distinct snapshot data type txid_snapshot. These older functions have txid in their names. They are still supported for backward compatibility, but may be removed from a future release. See Table 9.76....
> This improves performance for queries that access many object. The internal List API has also been improved.
many objects*
|Allow skipping of WAL for full table writes if wal_level is minimal (Kyotaro Horiguchi)
Allow WAL writes to be skipped...
And: this is not related to full_page_writes.
| Enable Unix-domain sockets support on Windows (Peter Eisentraut)
Enable support for ..
| Improve the performance when replaying DROP DATABASE commands when many tablespaces are in use (Fujii Masao)
s/the//
|Allow a sample of statements to be logged (Adrien Nayrat)
Allow logging a sample of statements
|Allow WAL receivers use a temporary replication slot if a permanent one is not specified (Peter Eisentraut, Sergei Kornilov)
*to* use
| Add leader_pid to pg_stat_activity to report parallel worker ownership (Julien Rouhaud)
s/ownership/leader/ ?
|Allow WAL recovery to continue even if invalid pages are referenced (Fujii Masao)
remove "WAL" or say:
>Allow recovery to continue even if invalid pages are referenced by WAL (Fujii Masao)
A few things I have't fixed in my patch:
|Previously, this value was adjusted before effecting the number of concurrent requests. This value is now used directly. Conversion of old values to new ones can be done using:
|SELECT round(sum(OLD / n::float)) FROM generate_series(1, OLD) s(n);
I think the round() should be aliased, "AS new".
I think "before effecting" is confusing, maybe say:
| Previously, the effective value was computed internally from the user-supplied parameter...
|Allow partitioned tables to be logically replicated via publications (Amit Langote)
|Previously, partitions had to be replicated individually. Now partitioned tables can be published explicitly causing all partitions to be automatically published. Addition/removal of partitions from partitioned tables are automatically added/removed from publications. The CREATE PUBLICATION option publish_via_partition_root controls whether changes to partitions are published as their own or their ancestor's.
=> "causing any future partitions to be automatically published".
"addition/removal .. are automatically" isn't right
|Implement incremental sorting (James Coleman, Alexander Korotkov, Tomas Vondra)
|If a result is already sorted by several leading keys, this allows for batch sorting of additional trailing keys because the previous keys are already equal. This is controlled by enable_incremental_sort.
s/several/one or more/
remove "additional" ?
remove "batch" ?
maybe "of ONLY trailing keys"
|Allow inserts to trigger autovacuum activity (Laurenz Albe, Darafei Praliaskouski)
|This new behavior reduces the work necessary when the table needs to be frozen and allows pages to be set as all-visible. All-visible pages allow index-only scans to access fewer heap rows.
There's a lot of "allow" here, but it sounds like relaxing a restriction when
actually this is a new functionality. Maybe:
| Allow autovacuum to be triggered by INSERTs.
| ..and allows autovacuum to set pages as all-visible.
I already mentioned a couple things back in May that still stand out;:
|Add jsonpath .datetime() method (Nikita Glukhov, Teodor Sigaev, Oleg Bartunov, Alexander Korotkov)
|This allows json values to be converted to timestamps, which can then be processed in jsonpath expressions. This also adds jsonpath functions that support time zone-aware output.
timezone-aware or time-zone-aware, if you must.
> Allow vacuum commands run by vacuumdb to operate in parallel mode (Masahiko Sawada)
=> I think this is still going to be lost/misunderstood/confuse some people.
vacuumdb already supports -j. This allows it to run vacuum(parallel N). So
maybe say "...to process indexes in parallel".
--
Justin
Attachments:0001-fixes-release-notes.patch (text/x-diff, 5.0K) download
From 3f45433193d8fd3e2110df23e56a2ce31d232243 Mon Sep 17 00:00:00 2001
From: Justin Pryzby <pryzbyj@telsasoft.com>
Date: Sun, 6 Sep 2020 22:10:11 -0500
Subject: [PATCH] fixes release notes
---
doc/src/sgml/release-13.sgml | 38 +++++++++++++++++-------------------
1 file changed, 18 insertions(+), 20 deletions(-)
diff --git a/doc/src/sgml/release-13.sgml b/doc/src/sgml/release-13.sgmlindex e27b044408..f4cc65178a 100644--- a/doc/src/sgml/release-13.sgml+++ b/doc/src/sgml/release-13.sgml@@ -731,8 +731,8 @@ Author: Noah Misch <noah@leadboat.com>
-->
<para>
- Allow skipping of <acronym>WAL</acronym> for <link- linkend="guc-full-page-writes">full table writes</link> if <xref+ Allow <acronym>WAL</acronym> writes to be skipped during a transaction+ which creates or rewrites a relations if <xref
linkend="guc-wal-level"/> is <literal>minimal</literal> (Kyotaro
Horiguchi)
</para>
@@ -753,8 +753,8 @@ Author: Peter Eisentraut <peter@eisentraut.org>
-->
<para>
- Enable <link linkend="client-authentication">Unix-domain sockets</link>- support on Windows (Peter Eisentraut)+ Enable support for <link linkend="client-authentication">Unix-domain sockets</link>+ on Windows (Peter Eisentraut)
</para>
</listitem>
@@ -765,7 +765,7 @@ Author: Fujii Masao <fujii@postgresql.org>
-->
<para>
- Improve the performance when replaying <link+ Improve performance when replaying <link
linkend="sql-dropdatabase"><command>DROP DATABASE</command></link>
commands when many tablespaces are in use (Fujii Masao)
</para>
@@ -888,7 +888,7 @@ Author: Tomas Vondra <tomas.vondra@postgresql.org>
-->
<para>
- Allow a sample of statements to be logged (Adrien Nayrat)+ Allow logging a sample of statements (Adrien Nayrat)
</para>
<para>
@@ -1000,7 +1000,7 @@ Author: Michael Paquier <michael@paquier.xyz>
<para>
Add <structfield>leader_pid</structfield> to <xref
- linkend="pg-stat-activity-view"/> to report parallel worker ownership+ linkend="pg-stat-activity-view"/> to report parallel worker's leader process
(Julien Rouhaud)
</para>
</listitem>
@@ -1285,7 +1285,7 @@ Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
-->
<para>
- Allow <acronym>WAL</acronym> receivers use a temporary replication slot+ Allow <acronym>WAL</acronym> receivers to use a temporary replication slot
if a permanent one is not specified (Peter Eisentraut, Sergei Kornilov)
</para>
@@ -1369,8 +1369,8 @@ Author: Fujii Masao <fujii@postgresql.org>
-->
<para>
- Allow <acronym>WAL</acronym> recovery to continue even if invalid- pages are referenced (Fujii Masao)+ Allow recovery to continue even if invalid+ pages are referenced by <acronym>WAL</acronym> (Fujii Masao)
</para>
<para>
@@ -1689,15 +1689,14 @@ Author: Andrew Dunstan <andrew@dunslane.net>
<para>
Add alternate version of <link
- linkend="functions-json-processing-table"><function>jsonb_setI()</function></link>+ linkend="functions-json-processing-table"><function>jsonb_set()</function></link>
with special <literal>NULL</literal> handling (Andrew Dunstan)
</para>
<para>
- The new function, <function>jsonb_set_lax()</function>, allows null- new values to either set the specified key to <acronym>JSON</acronym>- null, delete the key, raise exception, or ignore the operation.- IS 'return_target' CLEAR?+ The new function, <function>jsonb_set_lax()</function>, allows new+ null values to either set the specified key to <acronym>JSON</acronym>+ null, delete the key, raise an exception, or ignore the operation.
</para>
</listitem>
@@ -1863,8 +1862,8 @@ Author: Tom Lane <tgl@sss.pgh.pa.us>
<para>
Add function <link
linkend="functions-math-func-table"><function>min_scale()</function></link>
- that returns the number of digits to the right the decimal point- that is required to represent the numeric value with full precision+ that returns the number of digits to the right of the decimal point+ that are required to represent the numeric value with full precision
(Pavel Stehule)
</para>
</listitem>
@@ -1913,8 +1912,7 @@ Author: Thomas Munro <tmunro@postgresql.org>
</para>
<para>
- The old function names were kept for backward compatibility. DO WE- HAVE NEW NAMES?+ The old functions were kept for backward compatibility.
</para>
</listitem>
@@ -2833,7 +2831,7 @@ Author: Tom Lane <tgl@sss.pgh.pa.us>
</para>
<para>
- This improves performance for queries that access many object.+ This improves performance for queries that access many objects.
The internal List <acronym>API</acronym> has also been improved.
</para>
</listitem>
--
2.17.0
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-hackers@postgresql.org
Cc: pryzby@telsasoft.com, peter.eisentraut@2ndquadrant.com, pg@bowt.ie, amit.kapila16@gmail.com, bruce@momjian.us
Subject: Re: PG 13 release notes, first draft
In-Reply-To: <20200907134026.GC7158@telsasoft.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox