On Wed, Apr 15, 2026 at 10:59:13PM +0800, jian he wrote: > On Wed, Apr 15, 2026 at 9:19 AM Bruce Momjian <[email protected]> wrote: > > > > I have completed the first draft of the PG 19 release notes: > > > > https://www.postgresql.org/docs/devel/release-19.html > > > > https://git.postgresql.org/cgit/postgresql.git/commit/?id=ecd9288624a1582a732cf86ac5a01475a1ce7815
I don't usually mention test changes in the release notes. > https://git.postgresql.org/cgit/postgresql.git/commit/?id=4edd6036d69ce42ac1af236f659f20daed65c8d4 Uh, the commit message is: commit 4edd6036d69 Author: Tom Lane <[email protected]> Date: Tue Apr 7 14:45:33 2026 -0400 Fix WITHOUT OVERLAPS' interaction with domains. UNIQUE/PRIMARY KEY ... WITHOUT OVERLAPS requires the no-overlap column to be a range or multirange, but it should allow a domain over such a type too. This requires minor adjustments in both the parser and executor. In passing, fix a nearby break-instead-of-continue thinko in transformIndexConstraint. This had the effect of disabling parse-time validation of the no-overlap column's type in the context of ALTER TABLE ADD CONSTRAINT, if it follows a dropped column. We'd still complain appropriately at runtime though. Author: Jian He <[email protected]> Reviewed-by: Paul A Jungwirth <[email protected]> Reviewed-by: Tom Lane <[email protected]> Discussion: https://postgr.es/m/CACJufxGoAmN_0iJ=hjtg0vgposoyy-vyyfe+-q0awxrq2_p...@mail.gmail.com --> Backpatch-through: 18 Since it is backpatched to PG 18, it shouldn't appear in the PG 19 release notes. > """ > Allow COPY TO to output partitioned tables (Jian He, Ajin Cherian) § § > Previously COPY (SELECT ...) has to be used to output partitioned tables. > """ > The second commit uses this feature, so i guess the commit message > needs a slight change. Updated in attached patch. > """ > Improve timing performance measurements (Lukas Fittl, Andres Freund, > David Geier, Lukas Fittl, David Geier) § § > This benefits EXPLAIN (ANALYZE, TIMING) and pg_test_timing, and is > controlled via server variable timing_clock_source. > """ > Duplicated name entry. Fixed in attached patch. > """ > Allow IS [NOT] DISTINCT FROM NULL to be converted to IS [NOT] NULL for > proven null arguments (Richard Guo) § > The latter form is more easily optimized. > """ > Two optional ``[NOT]`` introduce ambiguity. Uh, if the NOT is in the first, it is in the second. Is that confusing? Suggestions? > """ > Add support for INSERT ... RETURNING ... ON CONFLICT DO SELECT > (Andreas Karlsson, Marko Tiikkaja, Viktor Holmberg) § > This allows conflicting rows to be returns, and optionally locked with > FOR UPDATE/SHARE. > """ > I think it's: > INSERT... ON CONFLICT DO SELECT...RETURNING Uh, went by the commit messsage which says: The INSERT statement must have a RETURNING clause, when DO SELECT is specified. However, all the examples have the syntax as you specified, so I must have interpreted it wrong. Applied patch attached. -- Bruce Momjian <[email protected]> https://momjian.us EDB https://enterprisedb.com Do not let urgent matters crowd out time for investment in the future.
diff --git a/doc/src/sgml/release-19.sgml b/doc/src/sgml/release-19.sgml index 1ae86ad0036..2137621f6a6 100644 --- a/doc/src/sgml/release-19.sgml +++ b/doc/src/sgml/release-19.sgml @@ -771,7 +771,7 @@ Author: Andres Freund <[email protected]> <listitem> <para> -Improve timing performance measurements (Lukas Fittl, Andres Freund, David Geier, Lukas Fittl, David Geier) +Improve timing performance measurements (Lukas Fittl, Andres Freund, David Geier, Lukas Fittl) <ulink url="&commit_baseurl;294520c44">§</ulink> <ulink url="&commit_baseurl;16fca4825">§</ulink> </para> @@ -1717,7 +1717,7 @@ Author: Dean Rasheed <[email protected]> <listitem> <para> -Add support for INSERT ... RETURNING ... ON CONFLICT DO SELECT (Andreas Karlsson, Marko Tiikkaja, Viktor Holmberg) +Add support for INSERT ... ON CONFLICT DO SELECT ... RETURNING (Andreas Karlsson, Marko Tiikkaja, Viktor Holmberg) <ulink url="&commit_baseurl;88327092f">§</ulink> </para> @@ -1999,7 +1999,7 @@ Allow COPY TO to output partitioned tables (Jian He, Ajin Cherian) </para> <para> -Previously COPY (SELECT ...) has to be used to output partitioned tables. +Previously COPY (SELECT ...) had to be used to output partitioned tables. This also improves logical replication table synchronization. </para> </listitem>
