diff options
-rw-r--r-- | doc/src/sgml/release-13.sgml | 5607 |
1 files changed, 2710 insertions, 2897 deletions
diff --git a/doc/src/sgml/release-13.sgml b/doc/src/sgml/release-13.sgml index a15e48a5f11..9b7b10fd7a3 100644 --- a/doc/src/sgml/release-13.sgml +++ b/doc/src/sgml/release-13.sgml @@ -12,9 +12,9 @@ <sect2> <title>Overview</title> - <para> - Major enhancements in <productname>PostgreSQL</productname> 13 include: - </para> + <para> + Major enhancements in <productname>PostgreSQL</productname> 13 include: + </para> <!-- Items in this list summarize one or more items below --> @@ -26,9 +26,9 @@ </itemizedlist> - <para> - The above items are explained in more detail in the sections below. - </para> + <para> + The above items are explained in more detail in the sections below. + </para> </sect2> @@ -36,227 +36,215 @@ <title>Migration to Version 13</title> - <para> - A dump/restore using <xref linkend="app-pg-dumpall"/> or use of <xref - linkend="pgupgrade"/> or logical replication is required for those - wishing to migrate data from any previous release. See <xref - linkend="upgrading"/> for general information on migrating to new major - releases. - </para> - - <para> - Version 13 contains a number of changes that may affect compatibility - with previous releases. Observe the following incompatibilities: - </para> - - <itemizedlist> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2019-09-07 [ca70bdaef] Fix issues around strictness of SIMILAR TO. - --> - <para> - Change <link linkend="functions-similarto-regexp"><command>SIMILAR - TO ... ESCAPE NULL</command></link> to return <literal>NULL</literal> - (Tom Lane) + A dump/restore using <xref linkend="app-pg-dumpall"/> or use of <xref + linkend="pgupgrade"/> or logical replication is required for those + wishing to migrate data from any previous release. See <xref + linkend="upgrading"/> for general information on migrating to new major + releases. </para> <para> - This new behavior matches the <acronym>SQL</acronym> specification. - Previously this caused the escape to be set to the default backslash - character. The previous behavior has been retained in old views - by keeping the original function unchanged. This also applies to - <command>substring(text FROM pattern ESCAPE text)</command>. + Version 13 contains a number of changes that may affect compatibility + with previous releases. Observe the following incompatibilities: </para> - </listitem> + <itemizedlist> <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-01-31 [870ad6a59] Fix not-quite-right string comparison in parse_jsonb_ind - --> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2019-09-07 [ca70bdaef] Fix issues around strictness of SIMILAR TO. +--> - <para> - Have <link - linkend="textsearch-functions-table"><function>jsonb_to_tsvector()</function></link> - properly check "string" parameter (Dominik Czarnota) - </para> + <para> + Change <link linkend="functions-similarto-regexp"><command>SIMILAR + TO ... ESCAPE NULL</command></link> to return <literal>NULL</literal> + (Tom Lane) + </para> + <para> + This new behavior matches the <acronym>SQL</acronym> specification. + Previously this caused the escape to be set to the default backslash + character. The previous behavior has been retained in old views + by keeping the original function unchanged. This also applies to + <command>substring(text FROM pattern ESCAPE text)</command>. + </para> </listitem> <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-03-28 [9950c8aad] Fix lquery's behavior for consecutive '*' items. - --> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-01-31 [870ad6a59] Fix not-quite-right string comparison in parse_jsonb_ind +--> - <para> - In <xref linkend="ltree"/>, when using adjacent asterisks with braces, - e.g. ".*{2}.*{3}", properly interpret that as ".*{5}" (Nikita Glukhov) - </para> + <para> + Have <link + linkend="textsearch-functions-table"><function>jsonb_to_tsvector()</function></link> + properly check "string" parameter (Dominik Czarnota) + </para> + </listitem> + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-03-28 [9950c8aad] Fix lquery's behavior for consecutive '*' items. +--> + + <para> + In <xref linkend="ltree"/>, when using adjacent asterisks with braces, + e.g. ".*{2}.*{3}", properly interpret that as ".*{5}" (Nikita Glukhov) + </para> </listitem> <listitem> - <!-- - Author: Thomas Munro <tmunro@postgresql.org> - 2020-03-16 [b09ff5366] Simplify the effective_io_concurrency setting. - --> +<!-- +Author: Thomas Munro <tmunro@postgresql.org> +2020-03-16 [b09ff5366] Simplify the effective_io_concurrency setting. +--> - <para> - Change the way non-default <xref - linkend="guc-effective-io-concurrency"/> values affect concurrency - (Thomas Munro) - </para> + <para> + Change the way non-default <xref + linkend="guc-effective-io-concurrency"/> values affect concurrency + (Thomas Munro) + </para> - <para> - 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: - </para> + <para> + 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: + </para> <programlisting> SELECT round(sum(OLD / n::float)) FROM generate_series(1, OLD) s(n); </programlisting> - </listitem> <listitem> - <!-- - Author: Alvaro Herrera <alvherre@alvh.no-ip.org> - 2019-11-12 [5c46e7d82] pg_stat_{ssl,gssapi}: Show only processes with connectio - --> - - <para> - Prevent display of auxiliary processes in <xref - linkend="pg-stat-ssl-view"/> and <xref linkend="pg-stat-gssapi-view"/> - system views (Euler Taveira) - </para> +<!-- +Author: Alvaro Herrera <alvherre@alvh.no-ip.org> +2019-11-12 [5c46e7d82] pg_stat_{ssl,gssapi}: Show only processes with connectio +--> - <para> - Queries that join these views to <xref - linkend="pg-stat-activity-view"/> and wish to see auxiliary processes - will need to use left joins. - </para> + <para> + Prevent display of auxiliary processes in <xref + linkend="pg-stat-ssl-view"/> and <xref linkend="pg-stat-gssapi-view"/> + system views (Euler Taveira) + </para> + <para> + Queries that join these views to <xref + linkend="pg-stat-activity-view"/> and wish to see auxiliary processes + will need to use left joins. + </para> </listitem> <listitem> - <!-- - Author: Peter Geoghegan <pg@bowt.ie> - 2020-03-07 [691e8b2e1] pageinspect: Fix types used for bt_metap() columns. - --> - - <para> - Fix <xref linkend="pageinspect"/>'s <function>bt_metap()</function> - to return more appropriate data types that are less likely to overflow - (Peter Geoghegan) - </para> +<!-- +Author: Peter Geoghegan <pg@bowt.ie> +2020-03-07 [691e8b2e1] pageinspect: Fix types used for bt_metap() columns. +--> + <para> + Fix <xref linkend="pageinspect"/>'s <function>bt_metap()</function> + to return more appropriate data types that are less likely to overflow + (Peter Geoghegan) + </para> </listitem> <listitem> - <!-- - Author: Fujii Masao <fujii@postgresql.org> - 2020-03-19 [1d253bae5] Rename the recovery-related wait events. - --> +<!-- +Author: Fujii Masao <fujii@postgresql.org> +2020-03-19 [1d253bae5] Rename the recovery-related wait events. +--> - <para> - Rename some recovery-related <link linkend="wait-event-table">wait - events</link> (Fujii Masao) - </para> - - <para> - Rename <literal>RecoveryWalAll</literal> - to <literal>RecoveryWalStream</literal> - and <literal>RecoveryWalStream</literal> to - <literal>RecoveryRetrieveRetryInterval</literal>. - </para> + <para> + Rename some recovery-related <link linkend="wait-event-table">wait + events</link> (Fujii Masao) + </para> + <para> + Rename <literal>RecoveryWalAll</literal> + to <literal>RecoveryWalStream</literal> + and <literal>RecoveryWalStream</literal> to + <literal>RecoveryRetrieveRetryInterval</literal>. + </para> </listitem> <listitem> - <!-- - Author: Fujii Masao <fujii@postgresql.org> - 2019-11-06 [979766c0a] Correct the command tags for ALTER ... RENAME COLUMN. - --> +<!-- +Author: Fujii Masao <fujii@postgresql.org> +2019-11-06 [979766c0a] Correct the command tags for ALTER ... RENAME COLUMN. +--> - <para> - Fix <link linkend="sql-alterforeigntable"><command>ALTER FOREIGN - TABLE ... RENAME COLUMN</command></link> to return a more appropriate - command tag (Fujii Masao) - </para> - - <para> - Previously it returned <command>ALTER TABLE</command>, but now returns - <command>ALTER FOREIGN TABLE</command>. - </para> + <para> + Fix <link linkend="sql-alterforeigntable"><command>ALTER FOREIGN + TABLE ... RENAME COLUMN</command></link> to return a more appropriate + command tag (Fujii Masao) + </para> + <para> + Previously it returned <command>ALTER TABLE</command>, but now returns + <command>ALTER FOREIGN TABLE</command>. + </para> </listitem> <listitem> - <!-- - Author: Fujii Masao <fujii@postgresql.org> - 2019-11-06 [979766c0a] Correct the command tags for ALTER ... RENAME COLUMN. - --> +<!-- +Author: Fujii Masao <fujii@postgresql.org> +2019-11-06 [979766c0a] Correct the command tags for ALTER ... RENAME COLUMN. +--> - <para> - Fix <link linkend="sql-altermaterializedview"><command>ALTER - MATERIALIZED VIEW ... RENAME COLUMN</command></link> to return a more - appropriate command tag (Fujii Masao) - </para> - - <para> - Previously it returned <command>ALTER TABLE</command>, but now returns - <command>ALTER MATERIALIZED VIEW</command>. - </para> + <para> + Fix <link linkend="sql-altermaterializedview"><command>ALTER + MATERIALIZED VIEW ... RENAME COLUMN</command></link> to return a more + appropriate command tag (Fujii Masao) + </para> + <para> + Previously it returned <command>ALTER TABLE</command>, but now returns + <command>ALTER MATERIALIZED VIEW</command>. + </para> </listitem> <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-03-05 [84eca14bc] Remove ancient hacks to ignore certain opclass names in - --> - - <para> - Remove support for defining <link linkend="sql-createopclass">operator - classes</link> using pre-<productname>PostgresSQL</productname> - 8.0 syntax (Daniel Gustafsson) - </para> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-03-05 [84eca14bc] Remove ancient hacks to ignore certain opclass names in +--> + <para> + Remove support for defining <link linkend="sql-createopclass">operator + classes</link> using pre-<productname>PostgresSQL</productname> + 8.0 syntax (Daniel Gustafsson) + </para> </listitem> <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-03-05 [e58a59975] Remove ancient support for upgrading pre-7.3 foreign key - --> - - <para> - Remove support for defining <link linkend="sql-altertable">foreign key - constraints</link> using pre-<productname>PostgresSQL</productname> - 7.3 syntax (Daniel Gustafsson) - </para> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-03-05 [e58a59975] Remove ancient support for upgrading pre-7.3 foreign key +--> + <para> + Remove support for defining <link linkend="sql-altertable">foreign key + constraints</link> using pre-<productname>PostgresSQL</productname> + 7.3 syntax (Daniel Gustafsson) + </para> </listitem> <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-03-05 [bb03010b9] Remove the "opaque" pseudo-type and associated compatibi - --> - - <para> - Remove support for "opaque" <link - linkend="sql-createtype">pseudo-types</link> used by - pre-<productname>PostgresSQL</productname> 7.3 servers (Daniel - Gustafsson) - </para> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-03-05 [bb03010b9] Remove the "opaque" pseudo-type and associated compatibi +--> + <para> + Remove support for "opaque" <link + linkend="sql-createtype">pseudo-types</link> used by + pre-<productname>PostgresSQL</productname> 7.3 servers (Daniel + Gustafsson) + </para> </listitem> </itemizedlist> @@ -266,11 +254,11 @@ <sect2> <title>Changes</title> - <para> - Below you will find a detailed account of the changes between - <productname>PostgreSQL</productname> 13 and the previous major - release. - </para> + <para> + Below you will find a detailed account of the changes between + <productname>PostgreSQL</productname> 13 and the previous major + release. + </para> <sect3> <title>Server</title> @@ -280,115 +268,111 @@ <itemizedlist> - <listitem> - <!-- - Author: Alvaro Herrera <alvherre@alvh.no-ip.org> - 2019-08-07 [4e85642d9] Apply constraint exclusion more generally in partitionin - Author: Alvaro Herrera <alvherre@alvh.no-ip.org> - 2019-08-13 [815ef2f56] Don't constraint-exclude partitioned tables as much - --> - - <para> - Improve cases where <link - linkend="ddl-partition-pruning">pruning</link> of partitions can happen - (Yuzuko Hosoya, Amit Langote, Álvaro Herrera) - </para> - - </listitem> - - <listitem> - <!-- - Author: Etsuro Fujita <efujita@postgresql.org> - 2020-04-08 [c8434d64c] Allow partitionwise joins in more cases. - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-04-07 [981643dcd] Allow partitionwise join to handle nested FULL JOIN USIN - --> - - <para> - Allow <link linkend="guc-enable-partitionwise-join">partitionwise - joins</link> to happen in more cases (Ashutosh Bapat, Etsuro Fujita, - Amit Langote, Tom Lane) - </para> - - <para> - For example, partitionwise joins can now happen between partitioned - tables even when their partition bounds do not match exactly. - </para> - </listitem> - - <listitem> - <!-- - Author: Alvaro Herrera <alvherre@alvh.no-ip.org> - 2020-03-18 [487e9861d] Enable BEFORE row-level triggers for partitioned tables - --> - - <para> - Allow <literal>BEFORE</literal> row-level <link - linkend="triggers">triggers</link> on partitioned tables (Álvaro - Herrera) - </para> - - <para> - These triggers cannot change which partition is the destination. - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2020-03-10 [17b9e7f9f] Support adding partitioned tables to publication - Author: Peter Eisentraut <peter@eisentraut.org> - 2020-04-08 [83fd4532a] Allow publishing partition changes via ancestors - --> - - <para> - Allow partitioned tables to be logically replicated via <link - linkend="sql-createpublication">publications</link> (Amit Langote) - </para> - - <para> - 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 <link linkend="sql-createpublication"><command>CREATE - PUBLICATION</command></link> option - <literal>publish_via_partition_root</literal> controls whether changes - to partitions are published as their own or their ancestor's. - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2020-04-06 [f1ac27bfd] Add logical replication support to replicate into partit - --> - - <para> - Allow logical replication into partitioned tables on subscribers - (Amit Langote) - </para> - - <para> - Previously, subscribers could only receive rows into non-partitioned - tables. - </para> - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2019-12-25 [bb4114a4e] Allow whole-row Vars to be used in partitioning expressi - --> - - <para> - Allow <link linkend="rowtypes"><literal>ROW</literal> values</link> - to be used as partitioning expressions (Amit Langote) - </para> - - </listitem> + <listitem> +<!-- +Author: Alvaro Herrera <alvherre@alvh.no-ip.org> +2019-08-07 [4e85642d9] Apply constraint exclusion more generally in partitionin +Author: Alvaro Herrera <alvherre@alvh.no-ip.org> +2019-08-13 [815ef2f56] Don't constraint-exclude partitioned tables as much +--> + + <para> + Improve cases where <link + linkend="ddl-partition-pruning">pruning</link> of partitions can happen + (Yuzuko Hosoya, Amit Langote, Álvaro Herrera) + </para> + </listitem> + + <listitem> +<!-- +Author: Etsuro Fujita <efujita@postgresql.org> +2020-04-08 [c8434d64c] Allow partitionwise joins in more cases. +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-04-07 [981643dcd] Allow partitionwise join to handle nested FULL JOIN USIN +--> + + <para> + Allow <link linkend="guc-enable-partitionwise-join">partitionwise + joins</link> to happen in more cases (Ashutosh Bapat, Etsuro Fujita, + Amit Langote, Tom Lane) + </para> + + <para> + For example, partitionwise joins can now happen between partitioned + tables even when their partition bounds do not match exactly. + </para> + </listitem> + + <listitem> +<!-- +Author: Alvaro Herrera <alvherre@alvh.no-ip.org> +2020-03-18 [487e9861d] Enable BEFORE row-level triggers for partitioned tables +--> + + <para> + Allow <literal>BEFORE</literal> row-level <link + linkend="triggers">triggers</link> on partitioned tables (Álvaro + Herrera) + </para> + + <para> + These triggers cannot change which partition is the destination. + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2020-03-10 [17b9e7f9f] Support adding partitioned tables to publication +Author: Peter Eisentraut <peter@eisentraut.org> +2020-04-08 [83fd4532a] Allow publishing partition changes via ancestors +--> + + <para> + Allow partitioned tables to be logically replicated via <link + linkend="sql-createpublication">publications</link> (Amit Langote) + </para> + + <para> + 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 <link linkend="sql-createpublication"><command>CREATE + PUBLICATION</command></link> option + <literal>publish_via_partition_root</literal> controls whether changes + to partitions are published as their own or their ancestor's. + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2020-04-06 [f1ac27bfd] Add logical replication support to replicate into partit +--> + + <para> + Allow logical replication into partitioned tables on subscribers + (Amit Langote) + </para> + + <para> + Previously, subscribers could only receive rows into non-partitioned + tables. + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2019-12-25 [bb4114a4e] Allow whole-row Vars to be used in partitioning expressi +--> + + <para> + Allow <link linkend="rowtypes"><literal>ROW</literal> values</link> + to be used as partitioning expressions (Amit Langote) + </para> + </listitem> </itemizedlist> @@ -399,112 +383,106 @@ <itemizedlist> - <listitem> - <!-- - Author: Peter Geoghegan <pg@bowt.ie> - 2020-02-26 [0d861bbb7] Add deduplication to nbtree. - --> - - <para> - More efficiently store <link - linkend="btree-deduplication">duplicates</link> in btree indexes - (Anastasia Lubennikova, Peter Geoghegan) - </para> - - <para> - This allows efficient btree indexing of low cardinality columns - by storing duplicate keys only once. Users upgrading with <link - linkend="pgupgrade"><application>pg_upgrade</application></link> - will need to use <link - linkend="sql-reindex"><command>REINDEX</command></link> to make use - of this feature. - </para> - - </listitem> - - <listitem> - <!-- - Author: Alexander Korotkov <akorotkov@postgresql.org> - 2019-07-14 [c085e1c1c] Add support for <-> (box, point) operator to GiST box_op - Author: Alexander Korotkov <akorotkov@postgresql.org> - 2019-07-14 [075f0a880] Add support for <-> (box, point) operator to SP-GiST box - --> - - <para> - Allow <link linkend="gist">GiST</link> and <link - linkend="spgist">SP-GiST</link> indexes for <link - linkend="datatype-line">box</link>/point distance lookups (Nikita - Glukhov) - </para> - - </listitem> - - <listitem> - <!-- - Author: Alexander Korotkov <akorotkov@postgresql.org> - 2020-01-18 [4b754d6c1] Avoid full scan of GIN indexes when possible - --> - - <para> - Allow <link linkend="gin"><acronym>GIN</acronym></link> indexes to - more efficiently handle <literal>NOT</literal> restrictions (Nikita - Glukhov, Alexander Korotkov, Tom Lane, Julien Rouhaud) - </para> - - </listitem> - - <listitem> - <!-- - Author: Alexander Korotkov <akorotkov@postgresql.org> - 2020-03-30 [911e70207] Implement operator class parameters - --> - - <para> - Allow <link linkend="sql-createindex">index operator classes</link> - to take parameters (Nikita Glukhov) - </para> - - </listitem> - - <listitem> - <!-- - Author: Alexander Korotkov <akorotkov@postgresql.org> - 2020-03-30 [911e70207] Implement operator class parameters - --> - - <para> - Allow <command>CREATE INDEX</command> to specify the GiST signature - length and maximum number of integer ranges (Nikita Glukhov) - </para> - - <para> - Indexes created on four and eight-byte <link linkend="intarray">integer - array</link>, <link linkend="textsearch">tsvector</link>, - <xref linkend="pgtrgm"/>, <xref linkend="ltree"/>, and <xref - linkend="hstore"/> columns can now control these GiST index parameters, - rather than using the defaults. - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2019-12-06 [fbbf68094] Disallow non-default collation in ADD PRIMARY KEY/UNIQUE - --> - - <para> - Prevent indexes that use non-default collations from being <link - linkend="sql-altertable">added</link> as a table's unique or primary - key constraint (Tom Lane) - </para> - - <para> - The index and column collations must now match so the index's - uniqueness matches the column's uniqueness. - </para> - - </listitem> + <listitem> +<!-- +Author: Peter Geoghegan <pg@bowt.ie> +2020-02-26 [0d861bbb7] Add deduplication to nbtree. +--> + + <para> + More efficiently store <link + linkend="btree-deduplication">duplicates</link> in btree indexes + (Anastasia Lubennikova, Peter Geoghegan) + </para> + + <para> + This allows efficient btree indexing of low cardinality columns + by storing duplicate keys only once. Users upgrading with <link + linkend="pgupgrade"><application>pg_upgrade</application></link> + will need to use <link + linkend="sql-reindex"><command>REINDEX</command></link> to make use + of this feature. + </para> + </listitem> + + <listitem> +<!-- +Author: Alexander Korotkov <akorotkov@postgresql.org> +2019-07-14 [c085e1c1c] Add support for <-> (box, point) operator to GiST box_op +Author: Alexander Korotkov <akorotkov@postgresql.org> +2019-07-14 [075f0a880] Add support for <-> (box, point) operator to SP-GiST box +--> + + <para> + Allow <link linkend="gist">GiST</link> and <link + linkend="spgist">SP-GiST</link> indexes for <link + linkend="datatype-line">box</link>/point distance lookups (Nikita + Glukhov) + </para> + </listitem> + + <listitem> +<!-- +Author: Alexander Korotkov <akorotkov@postgresql.org> +2020-01-18 [4b754d6c1] Avoid full scan of GIN indexes when possible +--> + + <para> + Allow <link linkend="gin"><acronym>GIN</acronym></link> indexes to + more efficiently handle <literal>NOT</literal> restrictions (Nikita + Glukhov, Alexander Korotkov, Tom Lane, Julien Rouhaud) + </para> + </listitem> + + <listitem> +<!-- +Author: Alexander Korotkov <akorotkov@postgresql.org> +2020-03-30 [911e70207] Implement operator class parameters +--> + + <para> + Allow <link linkend="sql-createindex">index operator classes</link> + to take parameters (Nikita Glukhov) + </para> + </listitem> + + <listitem> +<!-- +Author: Alexander Korotkov <akorotkov@postgresql.org> +2020-03-30 [911e70207] Implement operator class parameters +--> + + <para> + Allow <command>CREATE INDEX</command> to specify the GiST signature + length and maximum number of integer ranges (Nikita Glukhov) + </para> + + <para> + Indexes created on four and eight-byte <link linkend="intarray">integer + array</link>, <link linkend="textsearch">tsvector</link>, + <xref linkend="pgtrgm"/>, <xref linkend="ltree"/>, and <xref + linkend="hstore"/> columns can now control these GiST index parameters, + rather than using the defaults. + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2019-12-06 [fbbf68094] Disallow non-default collation in ADD PRIMARY KEY/UNIQUE +--> + + <para> + Prevent indexes that use non-default collations from being <link + linkend="sql-altertable">added</link> as a table's unique or primary + key constraint (Tom Lane) + </para> + + <para> + The index and column collations must now match so the index's + uniqueness matches the column's uniqueness. + </para> + </listitem> </itemizedlist> @@ -516,89 +494,83 @@ <itemizedlist> - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-04-01 [a80818605] Improve selectivity estimation for assorted match-style - --> - - <para> - Improve the optimizer's <link - linkend="planner-stats-details">selectivity</link> estimation for - containment/match operators (Tom Lane) - </para> - - </listitem> - - <listitem> - <!-- - Author: Tomas Vondra <tomas.vondra@postgresql.org> - 2019-09-11 [d06215d03] Allow setting statistics target for extended statistics - --> - - <para> - Allow setting <link linkend="sql-altertable">statistics target</link> - for <link linkend="sql-createstatistics">extended statistics</link> - (Tomas Vondra) - </para> - - <para> - This is controlled with the new command option <command>ALTER - STATISTICS ... SET STATISTICS</command>. Previously this was computed - based on more general statistics target settings. - </para> - - </listitem> - - <listitem> - <!-- - Author: Tomas Vondra <tomas.vondra@postgresql.org> - 2020-01-13 [aaa676187] Apply all available functional dependencies - Author: Tomas Vondra <tomas.vondra@postgresql.org> - 2020-01-13 [eae056c19] Apply multiple multivariate MCV lists when possible - --> - - <para> - Allow use of multiple extended statistics objects in a single query - (Tomas Vondra) - </para> - - </listitem> - - <listitem> - <!-- - Author: Tomas Vondra <tomas.vondra@postgresql.org> - 2020-03-14 [8f321bd16] Use functional dependencies to estimate ScalarArrayOpExp - Author: Tomas Vondra <tomas.vondra@postgresql.org> - 2020-03-14 [e83daa7e3] Use multi-variate MCV lists to estimate ScalarArrayOpExp - Author: Tomas Vondra <tomas.vondra@postgresql.org> - 2020-03-18 [ccaa3569f] Recognize some OR clauses as compatible with functional - --> - - <para> - Allow use of extended statistics objects for OR clauses and <link - linkend="functions-subquery">IN</link>/<literal>ANY</literal> constant - lists (Pierre Ducroquet, Tomas Vondra) - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2019-08-01 [7266d0997] Allow functions-in-FROM to be pulled up if they reduce t - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2019-09-24 [a9ae99d01] Prevent bogus pullup of constant-valued functions return - --> - - <para> - Allow functions in <literal>FROM</literal> clauses to be moved to their - reference sites if they evaluate to constants (Alexander Kuzmenkov, - Aleksandr Parfenov) - </para> - - </listitem> - + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-04-01 [a80818605] Improve selectivity estimation for assorted match-style +--> + + <para> + Improve the optimizer's <link + linkend="planner-stats-details">selectivity</link> estimation for + containment/match operators (Tom Lane) + </para> + </listitem> + + <listitem> +<!-- +Author: Tomas Vondra <tomas.vondra@postgresql.org> +2019-09-11 [d06215d03] Allow setting statistics target for extended statistics +--> + + <para> + Allow setting <link linkend="sql-altertable">statistics target</link> + for <link linkend="sql-createstatistics">extended statistics</link> + (Tomas Vondra) + </para> + + <para> + This is controlled with the new command option <command>ALTER + STATISTICS ... SET STATISTICS</command>. Previously this was computed + based on more general statistics target settings. + </para> + </listitem> + + <listitem> +<!-- +Author: Tomas Vondra <tomas.vondra@postgresql.org> +2020-01-13 [aaa676187] Apply all available functional dependencies +Author: Tomas Vondra <tomas.vondra@postgresql.org> +2020-01-13 [eae056c19] Apply multiple multivariate MCV lists when possible +--> + + <para> + Allow use of multiple extended statistics objects in a single query + (Tomas Vondra) + </para> + </listitem> + + <listitem> +<!-- +Author: Tomas Vondra <tomas.vondra@postgresql.org> +2020-03-14 [8f321bd16] Use functional dependencies to estimate ScalarArrayOpExp +Author: Tomas Vondra <tomas.vondra@postgresql.org> +2020-03-14 [e83daa7e3] Use multi-variate MCV lists to estimate ScalarArrayOpExp +Author: Tomas Vondra <tomas.vondra@postgresql.org> +2020-03-18 [ccaa3569f] Recognize some OR clauses as compatible with functional +--> + + <para> + Allow use of extended statistics objects for OR clauses and <link + linkend="functions-subquery">IN</link>/<literal>ANY</literal> constant + lists (Pierre Ducroquet, Tomas Vondra) + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2019-08-01 [7266d0997] Allow functions-in-FROM to be pulled up if they reduce t +Author: Tom Lane <tgl@sss.pgh.pa.us> +2019-09-24 [a9ae99d01] Prevent bogus pullup of constant-valued functions return +--> + + <para> + Allow functions in <literal>FROM</literal> clauses to be moved to their + reference sites if they evaluate to constants (Alexander Kuzmenkov, + Aleksandr Parfenov) + </para> + </listitem> </itemizedlist> @@ -609,251 +581,234 @@ <itemizedlist> - <listitem> - <!-- - Author: Tomas Vondra <tomas.vondra@postgresql.org> - 2020-04-06 [d2d8a229b] Implement Incremental Sort - --> - - <para> - Implement <link linkend="guc-enable-incrementalsort">incremental - sorting</link> (James Coleman, Alexander Korotkov, Tomas Vondra) - </para> - - <para> - 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 <xref - linkend="guc-enable-incrementalsort"/>. - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Geoghegan <pg@bowt.ie> - 2019-08-01 [71dcd7438] Add sort support routine for the inet data type. - --> - - <para> - Improve the performance of sorting <link - linkend="datatype-inet">inet</link> values (Brandur Leach) - </para> - - </listitem> - - <listitem> - <!-- - Author: Jeff Davis <jdavis@postgresql.org> - 2020-03-18 [1f39bce02] Disk-based Hash Aggregation. - Author: Jeff Davis <jdavis@postgresql.org> - 2020-03-24 [dd8e19132] Consider disk-based hash aggregation to implement DISTIN - --> - - <para> - Allow <link linkend="guc-enable-hashagg">hash aggregation</link> - to use disk storage for large aggregation result sets (Jeff Davis) - </para> - - <para> - Previously, hash aggregation was avoided if it was expected to use - more than <xref linkend="guc-work-mem"/> memory. This is controlled - by <xref linkend="guc-enable-hashagg-disk"/>. - </para> - - </listitem> - - <listitem> - <!-- - Author: Jeff Davis <jdavis@postgresql.org> - 2020-03-18 [1f39bce02] Disk-based Hash Aggregation. - --> - - <para> - Allow <link linkend="queries-grouping-sets">grouping sets</link> to - use hash aggregation with disk storage for large grouping set results - (Jeff Davis) - </para> - - <para> - Previously, hash aggregation was avoided if it was expected to use - more than <xref linkend="guc-work-mem"/> memory. This is controlled - by <xref linkend="guc-enable-hashagg-disk"/>. - </para> - - </listitem> - - <listitem> - <!-- - Author: David Rowley <drowley@postgresql.org> - 2020-03-28 [b07642dbc] Trigger autovacuum based on number of INSERTs - --> - - <para> - Allow inserts to trigger <link linkend="autovacuum">autovacuum</link> - activity (Laurenz Albe, Darafei Praliaskouski) - </para> - - <para> - 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. - </para> - - </listitem> - - <listitem> - <!-- - Author: Thomas Munro <tmunro@postgresql.org> - 2020-03-16 [fc34b0d9d] Introduce a maintenance_io_concurrency setting. - --> - - <para> - Add <xref linkend="guc-maintenance-io-concurrency"/> to control I/O - concurrency for maintenance operations (Thomas Munro) - </para> - - </listitem> - - <listitem> - <!-- - Author: Noah Misch <noah@leadboat.com> - 2020-04-04 [c6b92041d] Skip WAL for new relfilenodes, under wal_level=minimal. - --> - - <para> - Allow skipping of <acronym>WAL</acronym> for <link - linkend="guc-full-page-writes">full table writes</link> if <xref - linkend="guc-wal-level"/> is <literal>minimal</literal> (Kyotaro - Horiguchi) - </para> - - <para> - Relations larger than <xref linkend="guc-wal-skip-threshold"/> - will have their files fsync'ed rather than generating - <acronym>WAL</acronym>. Previously this was done only for - <command>COPY</command> operations, but the implementation had a bug - that could cause data loss during crash recovery. - - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2020-03-28 [8f3ec75de] Enable Unix-domain sockets support on Windows - --> - - <para> - Enable <link linkend="client-authentication">Unix-domain sockets</link> - support on Windows (Peter Eisentraut) - </para> - - </listitem> - - <listitem> - <!-- - Author: Fujii Masao <fujii@postgresql.org> - 2019-11-21 [e6d806952] Make DROP DATABASE command generate less WAL records. - --> - - <para> - Improve the performance when replaying <link - linkend="sql-dropdatabase"><command>DROP DATABASE</command></link> - commands when many tablespaces are in use (Fujii Masao) - </para> - - </listitem> - - <listitem> - <!-- - Author: Fujii Masao <fujii@postgresql.org> - 2019-09-24 [6d05086c0] Speedup truncations of relation forks. - --> - - <para> - Improve performance for <link linkend="sql-truncate">truncation</link> - of very large relations (Kirk Jamison) - </para> - - </listitem> - - <listitem> - <!-- - Author: Tomas Vondra <tomas.vondra@postgresql.org> - 2019-10-01 [11a078cf8] Optimize partial TOAST decompression - --> - - <para> - Improve speed of <link - linkend="storage-toast"><acronym>TOAST</acronym></link> decompression - and the retrieval of only the leading bytes of <acronym>TOAST</acronym> - values (Binguo Bao, Andrey Borodin) - </para> - - <para> - Previously, <acronym>TOAST</acronym> values were fully fetched and - only the requested leading bytes were decompressed and returned. - Now, only the requested bytes are fetched. - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2019-09-10 [bca6e6435] Reduce overhead of scanning the backend[] array in LISTE - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2019-09-22 [51004c717] Make some efficiency improvements in LISTEN/NOTIFY. - --> - - <para> - Improve performance of <link - linkend="sql-listen"><command>LISTEN</command></link>/<command>NOTIFY</command> - (Martijn van Oosterhout) - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2019-08-15 [bb5ae8f6c] Use a hash table to de-duplicate NOTIFY events faster. - --> - - <para> - Improve the efficiency of removing duplicate <link - linkend="sql-notify"><command>NOTIFY</command></link> events (Tom Lane) - </para> - - </listitem> - - <listitem> - <!-- - Author: Andrew Gierth <rhodiumtoad@postgresql.org> - 2020-02-01 [1fd687a03] Optimizations for integer to decimal output. - --> - - <para> - Use lookup tables to speed up integer to text conversion (David Fetter) - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2019-07-10 [b5810de3f] Reduce memory consumption for multi-statement query stri - --> - - <para> - Reduce memory usage for query strings that contain multiple - <acronym>SQL</acronym> statements (Amit Langote) - </para> - - </listitem> - + <listitem> +<!-- +Author: Tomas Vondra <tomas.vondra@postgresql.org> +2020-04-06 [d2d8a229b] Implement Incremental Sort +--> + + <para> + Implement <link linkend="guc-enable-incrementalsort">incremental + sorting</link> (James Coleman, Alexander Korotkov, Tomas Vondra) + </para> + + <para> + 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 <xref + linkend="guc-enable-incrementalsort"/>. + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Geoghegan <pg@bowt.ie> +2019-08-01 [71dcd7438] Add sort support routine for the inet data type. +--> + + <para> + Improve the performance of sorting <link + linkend="datatype-inet">inet</link> values (Brandur Leach) + </para> + </listitem> + + <listitem> +<!-- +Author: Jeff Davis <jdavis@postgresql.org> +2020-03-18 [1f39bce02] Disk-based Hash Aggregation. +Author: Jeff Davis <jdavis@postgresql.org> +2020-03-24 [dd8e19132] Consider disk-based hash aggregation to implement DISTIN +--> + + <para> + Allow <link linkend="guc-enable-hashagg">hash aggregation</link> + to use disk storage for large aggregation result sets (Jeff Davis) + </para> + + <para> + Previously, hash aggregation was avoided if it was expected to use + more than <xref linkend="guc-work-mem"/> memory. This is controlled + by <xref linkend="guc-enable-hashagg-disk"/>. + </para> + </listitem> + + <listitem> +<!-- +Author: Jeff Davis <jdavis@postgresql.org> +2020-03-18 [1f39bce02] Disk-based Hash Aggregation. +--> + + <para> + Allow <link linkend="queries-grouping-sets">grouping sets</link> to + use hash aggregation with disk storage for large grouping set results + (Jeff Davis) + </para> + + <para> + Previously, hash aggregation was avoided if it was expected to use + more than <xref linkend="guc-work-mem"/> memory. This is controlled + by <xref linkend="guc-enable-hashagg-disk"/>. + </para> + </listitem> + + <listitem> +<!-- +Author: David Rowley <drowley@postgresql.org> +2020-03-28 [b07642dbc] Trigger autovacuum based on number of INSERTs +--> + + <para> + Allow inserts to trigger <link linkend="autovacuum">autovacuum</link> + activity (Laurenz Albe, Darafei Praliaskouski) + </para> + + <para> + 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. + </para> + </listitem> + + <listitem> +<!-- +Author: Thomas Munro <tmunro@postgresql.org> +2020-03-16 [fc34b0d9d] Introduce a maintenance_io_concurrency setting. +--> + + <para> + Add <xref linkend="guc-maintenance-io-concurrency"/> to control I/O + concurrency for maintenance operations (Thomas Munro) + </para> + </listitem> + + <listitem> +<!-- +Author: Noah Misch <noah@leadboat.com> +2020-04-04 [c6b92041d] Skip WAL for new relfilenodes, under wal_level=minimal. +--> + + <para> + Allow skipping of <acronym>WAL</acronym> for <link + linkend="guc-full-page-writes">full table writes</link> if <xref + linkend="guc-wal-level"/> is <literal>minimal</literal> (Kyotaro + Horiguchi) + </para> + + <para> + Relations larger than <xref linkend="guc-wal-skip-threshold"/> + will have their files fsync'ed rather than generating + <acronym>WAL</acronym>. Previously this was done only for + <command>COPY</command> operations, but the implementation had a bug + that could cause data loss during crash recovery. + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2020-03-28 [8f3ec75de] Enable Unix-domain sockets support on Windows +--> + + <para> + Enable <link linkend="client-authentication">Unix-domain sockets</link> + support on Windows (Peter Eisentraut) + </para> + </listitem> + + <listitem> +<!-- +Author: Fujii Masao <fujii@postgresql.org> +2019-11-21 [e6d806952] Make DROP DATABASE command generate less WAL records. +--> + + <para> + Improve the performance when replaying <link + linkend="sql-dropdatabase"><command>DROP DATABASE</command></link> + commands when many tablespaces are in use (Fujii Masao) + </para> + </listitem> + + <listitem> +<!-- +Author: Fujii Masao <fujii@postgresql.org> +2019-09-24 [6d05086c0] Speedup truncations of relation forks. +--> + + <para> + Improve performance for <link linkend="sql-truncate">truncation</link> + of very large relations (Kirk Jamison) + </para> + </listitem> + + <listitem> +<!-- +Author: Tomas Vondra <tomas.vondra@postgresql.org> +2019-10-01 [11a078cf8] Optimize partial TOAST decompression +--> + + <para> + Improve speed of <link + linkend="storage-toast"><acronym>TOAST</acronym></link> decompression + and the retrieval of only the leading bytes of <acronym>TOAST</acronym> + values (Binguo Bao, Andrey Borodin) + </para> + + <para> + Previously, <acronym>TOAST</acronym> values were fully fetched and + only the requested leading bytes were decompressed and returned. + Now, only the requested bytes are fetched. + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2019-09-10 [bca6e6435] Reduce overhead of scanning the backend[] array in LISTE +Author: Tom Lane <tgl@sss.pgh.pa.us> +2019-09-22 [51004c717] Make some efficiency improvements in LISTEN/NOTIFY. +--> + + <para> + Improve performance of <link + linkend="sql-listen"><command>LISTEN</command></link>/<command>NOTIFY</command> + (Martijn van Oosterhout) + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2019-08-15 [bb5ae8f6c] Use a hash table to de-duplicate NOTIFY events faster. +--> + + <para> + Improve the efficiency of removing duplicate <link + linkend="sql-notify"><command>NOTIFY</command></link> events (Tom Lane) + </para> + </listitem> + + <listitem> +<!-- +Author: Andrew Gierth <rhodiumtoad@postgresql.org> +2020-02-01 [1fd687a03] Optimizations for integer to decimal output. +--> + + <para> + Use lookup tables to speed up integer to text conversion (David Fetter) + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2019-07-10 [b5810de3f] Reduce memory consumption for multi-statement query stri +--> + + <para> + Reduce memory usage for query strings that contain multiple + <acronym>SQL</acronym> statements (Amit Langote) + </para> + </listitem> </itemizedlist> @@ -864,131 +819,124 @@ <itemizedlist> - <listitem> - <!-- - Author: Amit Kapila <akapila@postgresql.org> - 2020-04-05 [6b466bf5f] Allow pg_stat_statements to track WAL usage statistics. - Author: Amit Kapila <akapila@postgresql.org> - 2020-04-06 [33e05f89c] Add the option to report WAL usage in EXPLAIN and auto_e - Author: Amit Kapila <akapila@postgresql.org> - 2020-04-06 [b7ce6de93] Allow autovacuum to log WAL usage statistics. - --> - - <para> - Allow <link linkend="sql-explain"><command>EXPLAIN</command></link>, - <xref linkend="auto-explain"/>, <link - linkend="autovacuum">autovacuum</link>, and <xref - linkend="pgstatstatements"/> to track <acronym>WAL</acronym> usage - statistics (Kirill Bychik, Julien Rouhaud) - </para> - - </listitem> - - <listitem> - <!-- - Author: Tomas Vondra <tomas.vondra@postgresql.org> - 2019-11-06 [6e3e6cc0e] Allow sampling of statements depending on duration - --> - - <para> - Allow a sample of statements to be logged (Adrien Nayrat) - </para> - - <para> - A <xref linkend="guc-log-statement-sample-rate"/> ratio of statements - taking over <xref linkend="guc-log-min-duration-sample"/> duration - will be logged. - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2020-03-15 [70a7b4776] Add backend type to csvlog and optionally log_line_prefi - --> - - <para> - Add the backend type to <link - linkend="runtime-config-logging">csvlog</link> and optionally <xref - linkend="guc-log-line-prefix"/> log output (Peter Eisentraut) - </para> - - </listitem> - - <listitem> - <!-- - Author: Alvaro Herrera <alvherre@alvh.no-ip.org> - 2019-12-11 [ba79cb5dc] Emit parameter values during query bind/execute errors - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-04-02 [0b34e7d30] Improve user control over truncation of logged bind-para - --> - - <para> - Improve control of prepared statement parameter logging (Alexey - Bashtanov, Álvaro Herrera) - </para> - - <para> - The <acronym>GUC</acronym> setting <xref - linkend="guc-log-parameter-max-length"/> controls the maximum length - of parameter values output during statement non-error logging, and - <xref linkend="guc-log-parameter-max-length-on-error"/> does the - same for error statement logging. Previously, prepared statement - parameters were not logged during errors. - </para> - - </listitem> - - <listitem> - <!-- - Author: Alvaro Herrera <alvherre@alvh.no-ip.org> - 2020-02-05 [15d13e829] Make vacuum buffer counters 64 bits wide - --> - - <para> - Make <link linkend="sql-vacuum">vacuum</link> buffer counters 64-bits - wide to avoid overflow (Álvaro Herrera) - </para> - - </listitem> - - <listitem> - <!-- - Author: Alvaro Herrera <alvherre@alvh.no-ip.org> - 2019-11-08 [71a8a4f6e] Add backtrace support for error reporting - --> - - <para> - Allow function call backtraces of errors to be logged (Peter - Eisentraut, Álvaro Herrera) - </para> - - <para> - Server variable <xref linkend="guc-backtrace-functions"/> specifies - which C functions should generate backtraces on error. - </para> - - </listitem> - - <listitem> - <!-- - Author: Michael Paquier <michael@paquier.xyz> - 2019-07-05 [313f87a17] Add min() and max() aggregates for pg_lsn - --> - - <para> - Add <function>min()</function> and - <function>max()</function> aggregates for <link - linkend="datatype-pg-lsn"><type>pg_lsn</type></link> (Fabrízio - de Royes Mello) - </para> - - <para> - This is useful for monitoring queries. - </para> - - </listitem> + <listitem> +<!-- +Author: Amit Kapila <akapila@postgresql.org> +2020-04-05 [6b466bf5f] Allow pg_stat_statements to track WAL usage statistics. +Author: Amit Kapila <akapila@postgresql.org> +2020-04-06 [33e05f89c] Add the option to report WAL usage in EXPLAIN and auto_e +Author: Amit Kapila <akapila@postgresql.org> +2020-04-06 [b7ce6de93] Allow autovacuum to log WAL usage statistics. +--> + + <para> + Allow <link linkend="sql-explain"><command>EXPLAIN</command></link>, + <xref linkend="auto-explain"/>, <link + linkend="autovacuum">autovacuum</link>, and <xref + linkend="pgstatstatements"/> to track <acronym>WAL</acronym> usage + statistics (Kirill Bychik, Julien Rouhaud) + </para> + </listitem> + + <listitem> +<!-- +Author: Tomas Vondra <tomas.vondra@postgresql.org> +2019-11-06 [6e3e6cc0e] Allow sampling of statements depending on duration +--> + + <para> + Allow a sample of statements to be logged (Adrien Nayrat) + </para> + + <para> + A <xref linkend="guc-log-statement-sample-rate"/> ratio of statements + taking over <xref linkend="guc-log-min-duration-sample"/> duration + will be logged. + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2020-03-15 [70a7b4776] Add backend type to csvlog and optionally log_line_prefi +--> + + <para> + Add the backend type to <link + linkend="runtime-config-logging">csvlog</link> and optionally <xref + linkend="guc-log-line-prefix"/> log output (Peter Eisentraut) + </para> + </listitem> + + <listitem> +<!-- +Author: Alvaro Herrera <alvherre@alvh.no-ip.org> +2019-12-11 [ba79cb5dc] Emit parameter values during query bind/execute errors +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-04-02 [0b34e7d30] Improve user control over truncation of logged bind-para +--> + + <para> + Improve control of prepared statement parameter logging (Alexey + Bashtanov, Álvaro Herrera) + </para> + + <para> + The <acronym>GUC</acronym> setting <xref + linkend="guc-log-parameter-max-length"/> controls the maximum length + of parameter values output during statement non-error logging, and + <xref linkend="guc-log-parameter-max-length-on-error"/> does the + same for error statement logging. Previously, prepared statement + parameters were not logged during errors. + </para> + </listitem> + + <listitem> +<!-- +Author: Alvaro Herrera <alvherre@alvh.no-ip.org> +2020-02-05 [15d13e829] Make vacuum buffer counters 64 bits wide +--> + + <para> + Make <link linkend="sql-vacuum">vacuum</link> buffer counters 64-bits + wide to avoid overflow (Álvaro Herrera) + </para> + </listitem> + + <listitem> +<!-- +Author: Alvaro Herrera <alvherre@alvh.no-ip.org> +2019-11-08 [71a8a4f6e] Add backtrace support for error reporting +--> + + <para> + Allow function call backtraces of errors to be logged (Peter + Eisentraut, Álvaro Herrera) + </para> + + <para> + Server variable <xref linkend="guc-backtrace-functions"/> specifies + which C functions should generate backtraces on error. + </para> + </listitem> + + <listitem> +<!-- +Author: Michael Paquier <michael@paquier.xyz> +2019-07-05 [313f87a17] Add min() and max() aggregates for pg_lsn +--> + + <para> + Add <function>min()</function> and + <function>max()</function> aggregates for <link + linkend="datatype-pg-lsn"><type>pg_lsn</type></link> (Fabrízio + de Royes Mello) + </para> + + <para> + This is useful for monitoring queries. + </para> + </listitem> </itemizedlist> @@ -999,109 +947,102 @@ <itemizedlist> - <listitem> - <!-- - Author: Michael Paquier <michael@paquier.xyz> - 2020-02-06 [b025f32e0] Add leader_pid to pg_stat_activity - --> - - <para> - Add <structfield>leader_pid</structfield> to <xref - linkend="pg-stat-activity-view"/> to report parallel worker ownership - (Julien Rouhaud) - </para> - - </listitem> - - <listitem> - <!-- - Author: Fujii Masao <fujii@postgresql.org> - 2020-03-03 [e65497df8] Report progress of streaming base backup. - --> - - <para> - Add system view <link - linkend="basebackup-progress-reporting"><structname>pg_stat_progress_basebackup</structname></link> - to report the progress of streaming base backups (Fujii Masao) - </para> - - </listitem> - - <listitem> - <!-- - Author: Alvaro Herrera <alvherre@alvh.no-ip.org> - 2020-01-15 [a166d408e] Report progress of ANALYZE commands - --> - - <para> - Add system view <link - linkend="monitoring-stats-dynamic-views-table"><structname>pg_stat_progress_analyze</structname></link> - to report <link linkend="sql-analyze">analyze</link> progress - (Álvaro Herrera, Tatsuro Yamada, Vinayak Pokale) - </para> - - </listitem> - - <listitem> - <!-- - Author: Amit Kapila <akapila@postgresql.org> - 2019-11-21 [9290ad198] Track statistics for spilling of changes from ReorderBuf - --> - - <para> - Add columns to the <link - linkend="monitoring-stats-dynamic-views-table"><structname>pg_stat_replication</structname></link> - system view to report how much logical decoding information has been - spilled to disk (Tomas Vondra) - </para> - - </listitem> - - <listitem> - <!-- - Author: Robert Haas <rhaas@postgresql.org> - 2020-01-09 [ed10f32e3] Add pg_shmem_allocations view. - --> - - <para> - Add system view <link - linkend="view-pg-shmem-allocations"><structname>pg_shmem_allocations</structname></link> - to display shared memory usage (Andres Freund, Robert Haas) - </para> - - </listitem> - - <listitem> - <!-- - Author: Tomas Vondra <tomas.vondra@postgresql.org> - 2020-04-02 [28cac71bd] Collect statistics about SLRU caches - --> - - <para> - Create <link - linkend="monitoring-stats-views-table"><structname>pg_stat_slru</structname></link> - system view to monitor internal <acronym>SLRU</acronym> caches - (Tomas Vondra) - </para> - - </listitem> - - <listitem> - <!-- - Author: Robert Haas <rhaas@postgresql.org> - 2020-01-07 [814727858] Increase the maximum value of track_activity_query_size. - --> - - <para> - Allow <xref linkend="guc-track-activity-query-size"/> to be set up - to 1MB (Vyacheslav Makarov) - </para> - - <para> - The previous maximum was 100kB. - </para> - - </listitem> + <listitem> +<!-- +Author: Michael Paquier <michael@paquier.xyz> +2020-02-06 [b025f32e0] Add leader_pid to pg_stat_activity +--> + + <para> + Add <structfield>leader_pid</structfield> to <xref + linkend="pg-stat-activity-view"/> to report parallel worker ownership + (Julien Rouhaud) + </para> + </listitem> + + <listitem> +<!-- +Author: Fujii Masao <fujii@postgresql.org> +2020-03-03 [e65497df8] Report progress of streaming base backup. +--> + + <para> + Add system view <link + linkend="basebackup-progress-reporting"><structname>pg_stat_progress_basebackup</structname></link> + to report the progress of streaming base backups (Fujii Masao) + </para> + </listitem> + + <listitem> +<!-- +Author: Alvaro Herrera <alvherre@alvh.no-ip.org> +2020-01-15 [a166d408e] Report progress of ANALYZE commands +--> + + <para> + Add system view <link + linkend="monitoring-stats-dynamic-views-table"><structname>pg_stat_progress_analyze</structname></link> + to report <link linkend="sql-analyze">analyze</link> progress + (Álvaro Herrera, Tatsuro Yamada, Vinayak Pokale) + </para> + </listitem> + + <listitem> +<!-- +Author: Amit Kapila <akapila@postgresql.org> +2019-11-21 [9290ad198] Track statistics for spilling of changes from ReorderBuf +--> + + <para> + Add columns to the <link + linkend="monitoring-stats-dynamic-views-table"><structname>pg_stat_replication</structname></link> + system view to report how much logical decoding information has been + spilled to disk (Tomas Vondra) + </para> + </listitem> + + <listitem> +<!-- +Author: Robert Haas <rhaas@postgresql.org> +2020-01-09 [ed10f32e3] Add pg_shmem_allocations view. +--> + + <para> + Add system view <link + linkend="view-pg-shmem-allocations"><structname>pg_shmem_allocations</structname></link> + to display shared memory usage (Andres Freund, Robert Haas) + </para> + </listitem> + + <listitem> +<!-- +Author: Tomas Vondra <tomas.vondra@postgresql.org> +2020-04-02 [28cac71bd] Collect statistics about SLRU caches +--> + + <para> + Create <link + linkend="monitoring-stats-views-table"><structname>pg_stat_slru</structname></link> + system view to monitor internal <acronym>SLRU</acronym> caches + (Tomas Vondra) + </para> + </listitem> + + <listitem> +<!-- +Author: Robert Haas <rhaas@postgresql.org> +2020-01-07 [814727858] Increase the maximum value of track_activity_query_size. +--> + + <para> + Allow <xref linkend="guc-track-activity-query-size"/> to be set up + to 1MB (Vyacheslav Makarov) + </para> + + <para> + The previous maximum was 100kB. + </para> + </listitem> </itemizedlist> @@ -1112,75 +1053,70 @@ <itemizedlist> - <listitem> - <!-- - Author: Thomas Munro <tmunro@postgresql.org> - 2020-01-31 [ef02fb15a] Report time spent in posix_fallocate() as a wait event. - --> - - <para> - Add wait event for <function>posix_fallocate()</function> (Thomas - Munro) - </para> - - </listitem> - - <listitem> - <!-- - Author: Andres Freund <andres@anarazel.de> - 2020-03-23 [cedffbdb8] Report wait event for cost-based vacuum delay. - --> - - <para> - Add wait event VacuumDelay to report on cost-based vacuum delay - (Justin Pryzby) - </para> - - </listitem> - - <listitem> - <!-- - Author: Fujii Masao <fujii@postgresql.org> - 2020-03-24 [b8e20d6da] Add wait events for WAL archive and recovery pause. - --> - - <para> - Add wait events for <acronym>WAL</acronym> archive and recovery pause - (Fujii Masao) - </para> - - <para> - The new events are BackupWaitWalArchive and RecoveryPause. - </para> - - </listitem> - - <listitem> - <!-- - Author: Fujii Masao <fujii@postgresql.org> - 2020-04-03 [18808f8c8] Add wait events for recovery conflicts. - --> - - <para> - Add wait events RecoveryConflictSnapshot and - RecoveryConflictTablespace to monitor recovery conflicts (Masahiko - Sawada) - </para> - - </listitem> - - <listitem> - <!-- - Author: Thomas Munro <tmunro@postgresql.org> - 2020-02-05 [815c2f097] Add kqueue(2) support to the WaitEventSet API. - --> - - <para> - Improve performance of wait events on <acronym>BSD</acronym>-based - systems (Thomas Munro) - </para> - - </listitem> + <listitem> +<!-- +Author: Thomas Munro <tmunro@postgresql.org> +2020-01-31 [ef02fb15a] Report time spent in posix_fallocate() as a wait event. +--> + + <para> + Add wait event for <function>posix_fallocate()</function> (Thomas + Munro) + </para> + </listitem> + + <listitem> +<!-- +Author: Andres Freund <andres@anarazel.de> +2020-03-23 [cedffbdb8] Report wait event for cost-based vacuum delay. +--> + + <para> + Add wait event VacuumDelay to report on cost-based vacuum delay + (Justin Pryzby) + </para> + </listitem> + + <listitem> +<!-- +Author: Fujii Masao <fujii@postgresql.org> +2020-03-24 [b8e20d6da] Add wait events for WAL archive and recovery pause. +--> + + <para> + Add wait events for <acronym>WAL</acronym> archive and recovery pause + (Fujii Masao) + </para> + + <para> + The new events are BackupWaitWalArchive and RecoveryPause. + </para> + </listitem> + + <listitem> +<!-- +Author: Fujii Masao <fujii@postgresql.org> +2020-04-03 [18808f8c8] Add wait events for recovery conflicts. +--> + + <para> + Add wait events RecoveryConflictSnapshot and + RecoveryConflictTablespace to monitor recovery conflicts (Masahiko + Sawada) + </para> + </listitem> + + <listitem> +<!-- +Author: Thomas Munro <tmunro@postgresql.org> +2020-02-05 [815c2f097] Add kqueue(2) support to the WaitEventSet API. +--> + + <para> + Improve performance of wait events on <acronym>BSD</acronym>-based + systems (Thomas Munro) + </para> + </listitem> </itemizedlist> @@ -1191,40 +1127,37 @@ <itemizedlist> - <listitem> - <!-- - Author: Fujii Masao <fujii@postgresql.org> - 2020-03-09 [d9249441e] Mark ssl_passphrase_command as GUC_SUPERUSER_ONLY. - --> - - <para> - Only allow superusers to view the <xref - linkend="guc-ssl-passphrase-command"/> setting (Insung Moon) - </para> - - <para> - This was changed as a security precaution. - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2019-12-04 [b1abfec82] Update minimum SSL version - --> - - <para> - Change the default minimum <acronym>TLS</acronym> version from 1.0 - to 1.2 (Peter Eisentraut) - </para> - - <para> - This is controlled by <xref linkend="guc-ssl-min-protocol-version"/>. - </para> - - </listitem> - + <listitem> +<!-- +Author: Fujii Masao <fujii@postgresql.org> +2020-03-09 [d9249441e] Mark ssl_passphrase_command as GUC_SUPERUSER_ONLY. +--> + + <para> + Only allow superusers to view the <xref + linkend="guc-ssl-passphrase-command"/> setting (Insung Moon) + </para> + + <para> + This was changed as a security precaution. + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2019-12-04 [b1abfec82] Update minimum SSL version +--> + + <para> + Change the default minimum <acronym>TLS</acronym> version from 1.0 + to 1.2 (Peter Eisentraut) + </para> + + <para> + This is controlled by <xref linkend="guc-ssl-min-protocol-version"/>. + </para> + </listitem> </itemizedlist> @@ -1235,57 +1168,53 @@ <itemizedlist> - <listitem> - <!-- - Author: Robert Haas <rhaas@postgresql.org> - 2020-01-16 [2eb34ac36] Fix problems with "read only query" checks, and refactor - --> - - <para> - Tighten rules on which utility commands are possible in <xref - linkend="guc-default-transaction-read-only"/> mode (Robert Haas) - </para> - - <para> - This also increases the number of utility commands that can run in - parallel queries. - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2019-11-29 [c4a7a392e] Make allow_system_table_mods settable at run time - --> - - <para> - Allow <xref linkend="guc-allow-system-table-mods"/> to be changed - after server start (Peter Eisentraut) - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2019-11-29 [508bf95b7] Remove any-user DML capability from allow_system_table_m - --> - - <para> - Disallow non-superusers from modifying system tables when <xref - linkend="guc-allow-system-table-mods"/> is set (Peter Eisentraut) - </para> - - <para> - Previously, if <xref linkend="guc-allow-system-table-mods"/> - was set at server start, non-superusers could issue - <command>INSERT</command>/<command>UPDATE</command>/<command>DELETE</command> - commands on system tables. - </para> - - </listitem> - + <listitem> +<!-- +Author: Robert Haas <rhaas@postgresql.org> +2020-01-16 [2eb34ac36] Fix problems with "read only query" checks, and refactor +--> + + <para> + Tighten rules on which utility commands are possible in <xref + linkend="guc-default-transaction-read-only"/> mode (Robert Haas) + </para> + + <para> + This also increases the number of utility commands that can run in + parallel queries. + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2019-11-29 [c4a7a392e] Make allow_system_table_mods settable at run time +--> + + <para> + Allow <xref linkend="guc-allow-system-table-mods"/> to be changed + after server start (Peter Eisentraut) + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2019-11-29 [508bf95b7] Remove any-user DML capability from allow_system_table_m +--> + + <para> + Disallow non-superusers from modifying system tables when <xref + linkend="guc-allow-system-table-mods"/> is set (Peter Eisentraut) + </para> + + <para> + Previously, if <xref linkend="guc-allow-system-table-mods"/> + was set at server start, non-superusers could issue + <command>INSERT</command>/<command>UPDATE</command>/<command>DELETE</command> + commands on system tables. + </para> + </listitem> </itemizedlist> @@ -1298,132 +1227,125 @@ <itemizedlist> - <listitem> - <!-- - Author: Alvaro Herrera <alvherre@alvh.no-ip.org> - 2020-03-27 [1e6148032] Allow walreceiver configuration to change on reload - --> - - <para> - Allow streaming replication configuration settings to be changed by - reload (Sergei Kornilov) - </para> - - <para> - Previously, a server restart was required to change - <xref linkend="guc-primary-conninfo"/> and <xref - linkend="guc-primary-slot-name"/>. - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2020-01-14 [329730827] walreceiver uses a temporary replication slot by default - Author: Alvaro Herrera <alvherre@alvh.no-ip.org> - 2020-03-27 [092c6936d] Set wal_receiver_create_temp_slot PGC_POSTMASTER - --> - - <para> - Allow <acronym>WAL</acronym> receivers use a temporary replication slot - if a permanent one is not specified (Peter Eisentraut, Sergei Kornilov) - </para> - - <para> - This behavior can be enabled using <xref - linkend="guc-wal-receiver-create-temp-slot"/>. - </para> - - </listitem> - - <listitem> - <!-- - Author: Alvaro Herrera <alvherre@alvh.no-ip.org> - 2020-04-07 [c65507763] Allow users to limit storage reserved by replication slo - --> - - <para> - Allow replication slot storage to be limited by <xref - linkend="guc-max-slot-wal-keep-size"/> (Kyotaro Horiguchi) - </para> - - <para> - Replication slots that exceed this value are invalidated. - </para> - - </listitem> - - <listitem> - <!-- - Author: Fujii Masao <fujii@postgresql.org> - 2020-03-24 [496ee647e] Prefer standby promotion over recovery pause. - --> - - <para> - Allow <link linkend="guc-promote-trigger-file">standby promotion</link> - to cancel any requested pause (Fujii Masao) - </para> - - <para> - Previously, promotion could not happen while the standby was in - paused state. - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2020-01-29 [dc788668b] Fail if recovery target is not reached - --> - - <para> - Generate an error if recovery does not reach the specified <link - linkend="runtime-config-wal-recovery-target">recovery target</link> - (Leif Gunnar Erlandsen, Peter Eisentraut) - </para> - - <para> - Previously, the end of the <acronym>WAL</acronym> would promote the - standby, even if the target was not reached. - </para> - - </listitem> - - <listitem> - <!-- - Author: Amit Kapila <akapila@postgresql.org> - 2019-11-19 [cec2edfa7] Add logical_decoding_work_mem to limit ReorderBuffer mem - --> - - <para> - Allow control over how much memory is used by logical decoding before - it is spilled to disk (Tomas Vondra, Dilip Kumar, Amit Kapila) - </para> - - <para> - This is controlled by <xref linkend="guc-logical-decoding-work-mem"/>. - </para> - - </listitem> - - <listitem> - <!-- - Author: Fujii Masao <fujii@postgresql.org> - 2020-01-22 [41c184bc6] Add GUC ignore_invalid_pages. - --> - - <para> - Allow <acronym>WAL</acronym> recovery to continue even if invalid - pages are referenced (Fujii Masao) - </para> - - <para> - This is enabled using <xref linkend="guc-ignore-invalid-pages"/>. - </para> - - </listitem> + <listitem> +<!-- +Author: Alvaro Herrera <alvherre@alvh.no-ip.org> +2020-03-27 [1e6148032] Allow walreceiver configuration to change on reload +--> + + <para> + Allow streaming replication configuration settings to be changed by + reload (Sergei Kornilov) + </para> + + <para> + Previously, a server restart was required to change + <xref linkend="guc-primary-conninfo"/> and <xref + linkend="guc-primary-slot-name"/>. + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2020-01-14 [329730827] walreceiver uses a temporary replication slot by default +Author: Alvaro Herrera <alvherre@alvh.no-ip.org> +2020-03-27 [092c6936d] Set wal_receiver_create_temp_slot PGC_POSTMASTER +--> + + <para> + Allow <acronym>WAL</acronym> receivers use a temporary replication slot + if a permanent one is not specified (Peter Eisentraut, Sergei Kornilov) + </para> + + <para> + This behavior can be enabled using <xref + linkend="guc-wal-receiver-create-temp-slot"/>. + </para> + </listitem> + + <listitem> +<!-- +Author: Alvaro Herrera <alvherre@alvh.no-ip.org> +2020-04-07 [c65507763] Allow users to limit storage reserved by replication slo +--> + + <para> + Allow replication slot storage to be limited by <xref + linkend="guc-max-slot-wal-keep-size"/> (Kyotaro Horiguchi) + </para> + + <para> + Replication slots that exceed this value are invalidated. + </para> + </listitem> + + <listitem> +<!-- +Author: Fujii Masao <fujii@postgresql.org> +2020-03-24 [496ee647e] Prefer standby promotion over recovery pause. +--> + + <para> + Allow <link linkend="guc-promote-trigger-file">standby promotion</link> + to cancel any requested pause (Fujii Masao) + </para> + + <para> + Previously, promotion could not happen while the standby was in + paused state. + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2020-01-29 [dc788668b] Fail if recovery target is not reached +--> + + <para> + Generate an error if recovery does not reach the specified <link + linkend="runtime-config-wal-recovery-target">recovery target</link> + (Leif Gunnar Erlandsen, Peter Eisentraut) + </para> + + <para> + Previously, the end of the <acronym>WAL</acronym> would promote the + standby, even if the target was not reached. + </para> + </listitem> + + <listitem> +<!-- +Author: Amit Kapila <akapila@postgresql.org> +2019-11-19 [cec2edfa7] Add logical_decoding_work_mem to limit ReorderBuffer mem +--> + + <para> + Allow control over how much memory is used by logical decoding before + it is spilled to disk (Tomas Vondra, Dilip Kumar, Amit Kapila) + </para> + + <para> + This is controlled by <xref linkend="guc-logical-decoding-work-mem"/>. + </para> + </listitem> + + <listitem> +<!-- +Author: Fujii Masao <fujii@postgresql.org> +2020-01-22 [41c184bc6] Add GUC ignore_invalid_pages. +--> + + <para> + Allow <acronym>WAL</acronym> recovery to continue even if invalid + pages are referenced (Fujii Masao) + </para> + + <para> + This is enabled using <xref linkend="guc-ignore-invalid-pages"/>. + </para> + </listitem> </itemizedlist> @@ -1434,219 +1356,205 @@ <itemizedlist> - <listitem> - <!-- - Author: Amit Kapila <akapila@postgresql.org> - 2020-01-20 [40d964ec9] Allow vacuum command to process indexes in parallel. - --> - - <para> - Allow <link linkend="sql-vacuum"><command>VACUUM</command></link> - to process indexes in parallel (Masahiko Sawada, Amit Kapila) - </para> - - <para> - The new <literal>PARALLEL</literal> option controls this. - </para> - - </listitem> - - <listitem> - <!-- - Author: Alvaro Herrera <alvherre@alvh.no-ip.org> - 2020-04-07 [357889eb1] Support FETCH FIRST WITH TIES - --> - - <para> - Allow <link linkend="sql-fetch"><command>FETCH FIRST</command></link> - to use <literal>WITH TIES</literal> to return any additional rows - that match the last result row (Surafel Temesgen) - </para> - - </listitem> - - <listitem> - <!-- - Author: Fujii Masao <fujii@postgresql.org> - 2020-04-04 [ce77abe63] Include information on buffer usage during planning phas - --> - - <para> - Report planning-time buffer usage in <link - linkend="sql-explain"><command>EXPLAIN</command></link>'s - <literal>BUFFER</literal> output (Julien Rouhaud) - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-03-10 [cacef1722] Ensure that CREATE TABLE LIKE copies any NO INHERIT cons - --> - - <para> - Have <link linkend="sql-createtable"><command>CREATE TABLE - LIKE</command></link> propagate <literal>CHECK</literal>'s <literal>NO - INHERIT</literal> property to created tables (Ildar Musin, Chris - Travers) - </para> - - </listitem> - - <listitem> - <!-- - Author: Fujii Masao <fujii@postgresql.org> - 2020-02-18 [b7e51b350] Make inherited LOCK TABLE perform access permission chec - --> - - <para> - When using <link linkend="sql-lock"><command>LOCK - TABLE</command></link> on a partitioned table, do not check permissions - on the child tables (Amit Langote) - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2020-03-31 [de3bbfcc9] Fix INSERT OVERRIDING USER VALUE behavior - --> - - <para> - Allow <link linkend="sql-insert"><literal>OVERRIDING USER - VALUE</literal></link> on inserts into identity columns (Dean Rasheed) - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2020-01-14 [f595117e2] ALTER TABLE ... ALTER COLUMN ... DROP EXPRESSION - --> - - <para> - Add <link linkend="sql-altertable"><command>ALTER - TABLE</command></link> clause <literal>DROP EXPRESSION</literal> - to remove generated properties from columns (Peter Eisentraut) - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-01-15 [1281a5c90] Restructure ALTER TABLE execution to fix assorted bugs. - --> - - <para> - Fix bugs in <command>ALTER TABLE</command> when later clauses overlap - changes made by earlier clauses in the same command (Tom Lane) - </para> - - </listitem> - - <listitem> - <!-- - Author: Fujii Masao <fujii@postgresql.org> - 2019-11-21 [30840c92a] Allow ALTER VIEW command to rename the column in the vie - --> - - <para> - Add <link linkend="sql-alterview"><command>ALTER VIEW</command></link> - syntax to rename view columns (Fujii Masao) - </para> - - <para> - This was previously possible only using <command>ALTER TABLE RENAME - COLUMN</command>. - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-03-06 [fe30e7ebf] Allow ALTER TYPE to change some properties of a base typ - --> - - <para> - Add <link linkend="sql-altertype"><command>ALTER TYPE</command></link> - options useful for extensions, like <acronym>TOAST</acronym> and I/O - functions control (Tomas Vondra, Tom Lane) - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2019-07-23 [06140c201] Add CREATE DATABASE LOCALE option - --> - - <para> - Add <link linkend="sql-createdatabase"><command>CREATE - DATABASE</command></link> <literal>LOCALE</literal> option (Peter - Eisentraut) - </para> - - <para> - This combines existing options <literal>LC_COLLATE</literal> and - <literal>LC_CTYPE</literal> into a single option. - </para> - - </listitem> - - <listitem> - <!-- - Author: Amit Kapila <akapila@postgresql.org> - 2019-11-13 [1379fd537] Introduce the 'force' option for the Drop Database comma - --> - - <para> - Allow <link linkend="sql-dropdatabase"><command>DROP - DATABASE</command></link> to disconnect users so drop succeeds (Pavel - Stehule, Amit Kapila) - </para> - - <para> - This is enabled by <literal>WITH FORCE</literal>. - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2020-03-09 [71d60e2aa] Add tg_updatedcols to TriggerData - --> - - <para> - Add C structure member <link - linkend="trigger-interface"><structfield>tg_updatedcols</structfield></link> - to record updated columns to C triggers (Peter Eisentraut) - </para> - - </listitem> - - <listitem> - <!-- - Author: Alvaro Herrera <alvherre@alvh.no-ip.org> - 2020-03-20 [4e6209134] pg_dump: Add FOREIGN to ALTER statements, if appropriate - --> - - <para> - Add <literal>FOREIGN</literal> to <command>ALTER</command> statements, - if appropriate (Luis Carril) - </para> - - <para> - WHAT IS THIS ABOUT? - </para> - - </listitem> + <listitem> +<!-- +Author: Amit Kapila <akapila@postgresql.org> +2020-01-20 [40d964ec9] Allow vacuum command to process indexes in parallel. +--> + + <para> + Allow <link linkend="sql-vacuum"><command>VACUUM</command></link> + to process indexes in parallel (Masahiko Sawada, Amit Kapila) + </para> + + <para> + The new <literal>PARALLEL</literal> option controls this. + </para> + </listitem> + + <listitem> +<!-- +Author: Alvaro Herrera <alvherre@alvh.no-ip.org> +2020-04-07 [357889eb1] Support FETCH FIRST WITH TIES +--> + + <para> + Allow <link linkend="sql-fetch"><command>FETCH FIRST</command></link> + to use <literal>WITH TIES</literal> to return any additional rows + that match the last result row (Surafel Temesgen) + </para> + </listitem> + + <listitem> +<!-- +Author: Fujii Masao <fujii@postgresql.org> +2020-04-04 [ce77abe63] Include information on buffer usage during planning phas +--> + + <para> + Report planning-time buffer usage in <link + linkend="sql-explain"><command>EXPLAIN</command></link>'s + <literal>BUFFER</literal> output (Julien Rouhaud) + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-03-10 [cacef1722] Ensure that CREATE TABLE LIKE copies any NO INHERIT cons +--> + + <para> + Have <link linkend="sql-createtable"><command>CREATE TABLE + LIKE</command></link> propagate <literal>CHECK</literal>'s <literal>NO + INHERIT</literal> property to created tables (Ildar Musin, Chris + Travers) + </para> + </listitem> + + <listitem> +<!-- +Author: Fujii Masao <fujii@postgresql.org> +2020-02-18 [b7e51b350] Make inherited LOCK TABLE perform access permission chec +--> + + <para> + When using <link linkend="sql-lock"><command>LOCK + TABLE</command></link> on a partitioned table, do not check permissions + on the child tables (Amit Langote) + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2020-03-31 [de3bbfcc9] Fix INSERT OVERRIDING USER VALUE behavior +--> + + <para> + Allow <link linkend="sql-insert"><literal>OVERRIDING USER + VALUE</literal></link> on inserts into identity columns (Dean Rasheed) + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2020-01-14 [f595117e2] ALTER TABLE ... ALTER COLUMN ... DROP EXPRESSION +--> + + <para> + Add <link linkend="sql-altertable"><command>ALTER + TABLE</command></link> clause <literal>DROP EXPRESSION</literal> + to remove generated properties from columns (Peter Eisentraut) + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-01-15 [1281a5c90] Restructure ALTER TABLE execution to fix assorted bugs. +--> + + <para> + Fix bugs in <command>ALTER TABLE</command> when later clauses overlap + changes made by earlier clauses in the same command (Tom Lane) + </para> + </listitem> + + <listitem> +<!-- +Author: Fujii Masao <fujii@postgresql.org> +2019-11-21 [30840c92a] Allow ALTER VIEW command to rename the column in the vie +--> + + <para> + Add <link linkend="sql-alterview"><command>ALTER VIEW</command></link> + syntax to rename view columns (Fujii Masao) + </para> + + <para> + This was previously possible only using <command>ALTER TABLE RENAME + COLUMN</command>. + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-03-06 [fe30e7ebf] Allow ALTER TYPE to change some properties of a base typ +--> + + <para> + Add <link linkend="sql-altertype"><command>ALTER TYPE</command></link> + options useful for extensions, like <acronym>TOAST</acronym> and I/O + functions control (Tomas Vondra, Tom Lane) + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2019-07-23 [06140c201] Add CREATE DATABASE LOCALE option +--> + + <para> + Add <link linkend="sql-createdatabase"><command>CREATE + DATABASE</command></link> <literal>LOCALE</literal> option (Peter + Eisentraut) + </para> + + <para> + This combines existing options <literal>LC_COLLATE</literal> and + <literal>LC_CTYPE</literal> into a single option. + </para> + </listitem> + + <listitem> +<!-- +Author: Amit Kapila <akapila@postgresql.org> +2019-11-13 [1379fd537] Introduce the 'force' option for the Drop Database comma +--> + + <para> + Allow <link linkend="sql-dropdatabase"><command>DROP + DATABASE</command></link> to disconnect users so drop succeeds (Pavel + Stehule, Amit Kapila) + </para> + + <para> + This is enabled by <literal>WITH FORCE</literal>. + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2020-03-09 [71d60e2aa] Add tg_updatedcols to TriggerData +--> + + <para> + Add C structure member <link + linkend="trigger-interface"><structfield>tg_updatedcols</structfield></link> + to record updated columns to C triggers (Peter Eisentraut) + </para> + </listitem> + + <listitem> +<!-- +Author: Alvaro Herrera <alvherre@alvh.no-ip.org> +2020-03-20 [4e6209134] pg_dump: Add FOREIGN to ALTER statements, if appropriate +--> + + <para> + Add <literal>FOREIGN</literal> to <command>ALTER</command> statements, + if appropriate (Luis Carril) + </para> + + <para> + WHAT IS THIS ABOUT? + </para> + </listitem> </itemizedlist> @@ -1657,104 +1565,97 @@ <itemizedlist> - <listitem> - <!-- - Tom Lane <tgl@sss.pgh.pa.us> - 2020-03-19 [24e2885ee] Introduce "anycompatible" family of polymorphic types. - --> - - <para> - Add polymorphic data types for use by functions requiring compatible - arguments (Pavel Stehule) - </para> - - <para> - The new data types are <link - linkend="datatype-pseudotypes-table">anycompatible</link>, - anycompatiblearray, anycompatiblenonarray, and anycompatiblerange. - </para> - - </listitem> - - <listitem> - <!-- - Author: Thomas Munro <tmunro@postgresql.org> - 2020-04-07 [aeec457de] Add SQL type xid8 to expose FullTransactionId to users. - --> - - <para> - Add <acronym>SQL</acronym> data type <link - linkend="datatype-oid">xid8</link> to expose FullTransactionId - (Thomas Munro) - </para> - - <para> - The xid data type is only four bytes so does not show the transaction - epoch. - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2020-03-18 [a2b1faa0f] Implement type regcollation - --> - - <para> - Add data type <link linkend="datatype-oid">regcollation</link> and - helper functions for system collations (Julien Rouhaud) - </para> - - </listitem> - - <listitem> - <!-- - Author: Thomas Munro <tmunro@postgresql.org> - 2019-10-16 [d5ac14f9c] Use libc version as a collation version on glibc systems - --> - - <para> - Use the glibc version in some cases as the <link - linkend="collation">collation</link> version (Thomas Munro) - </para> - - <para> - If the glibc version changes, a warning will be issued when a - mismatching collation is used. - </para> - - </listitem> - - <listitem> - <!-- - Author: Thomas Munro <tmunro@postgresql.org> - 2020-03-25 [352f6f2df] Add collation versions for Windows. - --> - - <para> - Add support for collation versions on Windows (Thomas Munro) - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2019-10-28 [8b7a0f1d1] Allow extracting fields from a ROW() expression in more - --> - - <para> - Allow <link linkend="rowtypes"><literal>ROW</literal> values</link> - values to have their members extracted with suffix notation (Tom Lane) - </para> - - <para> - For example, <literal>(ROW(4, 5.0)).f1</literal> returns 4. - </para> - - </listitem> - + <listitem> +<!-- +Tom Lane <tgl@sss.pgh.pa.us> +2020-03-19 [24e2885ee] Introduce "anycompatible" family of polymorphic types. +--> + + <para> + Add polymorphic data types for use by functions requiring compatible + arguments (Pavel Stehule) + </para> + + <para> + The new data types are <link + linkend="datatype-pseudotypes-table">anycompatible</link>, + anycompatiblearray, anycompatiblenonarray, and anycompatiblerange. + </para> + </listitem> + + <listitem> +<!-- +Author: Thomas Munro <tmunro@postgresql.org> +2020-04-07 [aeec457de] Add SQL type xid8 to expose FullTransactionId to users. +--> + + <para> + Add <acronym>SQL</acronym> data type <link + linkend="datatype-oid">xid8</link> to expose FullTransactionId + (Thomas Munro) + </para> + + <para> + The xid data type is only four bytes so does not show the transaction + epoch. + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2020-03-18 [a2b1faa0f] Implement type regcollation +--> + + <para> + Add data type <link linkend="datatype-oid">regcollation</link> and + helper functions for system collations (Julien Rouhaud) + </para> + </listitem> + + <listitem> +<!-- +Author: Thomas Munro <tmunro@postgresql.org> +2019-10-16 [d5ac14f9c] Use libc version as a collation version on glibc systems +--> + + <para> + Use the glibc version in some cases as the <link + linkend="collation">collation</link> version (Thomas Munro) + </para> + + <para> + If the glibc version changes, a warning will be issued when a + mismatching collation is used. + </para> + </listitem> + + <listitem> +<!-- +Author: Thomas Munro <tmunro@postgresql.org> +2020-03-25 [352f6f2df] Add collation versions for Windows. +--> + + <para> + Add support for collation versions on Windows (Thomas Munro) + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2019-10-28 [8b7a0f1d1] Allow extracting fields from a ROW() expression in more +--> + + <para> + Allow <link linkend="rowtypes"><literal>ROW</literal> values</link> + values to have their members extracted with suffix notation (Tom Lane) + </para> + + <para> + For example, <literal>(ROW(4, 5.0)).f1</literal> returns 4. + </para> + </listitem> </itemizedlist> @@ -1765,302 +1666,285 @@ <itemizedlist> - <listitem> - <!-- - Author: Andrew Dunstan <andrew@dunslane.net> - 2020-01-17 [a83586b55] Add a non-strict version of jsonb_set - --> - - <para> - Add alternate version of <link - linkend="functions-json-processing-table"><function>jsonb_setI()</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? - </para> - - </listitem> - - <listitem> - <!-- - Author: Alexander Korotkov <akorotkov@postgresql.org> - 2019-09-25 [bffe1bd68] Implement jsonpath .datetime() method - --> - - <para> - Add jsonpath <link - linkend="functions-sqljson-path-operators">.<function>datetime()</function></link> - method (Nikita Glukhov, Teodor Sigaev, Oleg Bartunov, Alexander - Korotkov) - </para> - - <para> - 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. - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2020-04-02 [2991ac5fc] Add SQL functions for Unicode normalization - --> - - <para> - Add <acronym>SQL</acronym> functions <link - linkend="functions-string-sql"><literal>NORMALIZE</literal>()</link> - to normalize Unicode strings, and <link - linkend="collation-nondeterministic"><literal>IS - NORMALIZED</literal></link> to check for normalization (Peter - Eisentraut) - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-03-06 [a6525588b] Allow Unicode escapes in any server encoding, not only U - --> - - <para> - Allow <link linkend="sql-syntax-strings-uescape">Unicode - escapes</link>, e.g., E'\u####', U&'\####', to specify any - character available in the database encoding, even when the database - encoding is not <acronym>UTF</acronym>-8 (Tom Lane) - </para> - - <para> - The Unicode characters must be available in the database encoding. - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-03-03 [d67755049] Allow to_date/to_timestamp to recognize non-English mont - --> - - <para> - Allow <link - linkend="functions-formatting"><function>to_date()</function></link> - and <function>to_timestamp()</function> to recognize non-English - month/day names (Juan José Santamaría Flecha, Tom Lane) - </para> - - <para> - The names recognized are the same as those output by <link - linkend="functions-formatting"><function>to_char()</function></link> - with the same format codes. - </para> - - </listitem> - - <listitem> - <!-- - Author: Alexander Korotkov <akorotkov@postgresql.org> - 2019-09-16 [d589f9446] Support for FF1-FF6 datetime format patterns - --> - - <para> - Add format specifications FF1-FF6 to control display of 1-6 subsecond - digits (Alexander Korotkov, Nikita Glukhov, Teodor Sigaev, Oleg - Bartunov) - </para> - - <para> - These patterns can be used by <function>to_char()</function>, - <function>to_timestamp()</function>, and jsonpath's - .<function>datetime()</function>. - </para> - - </listitem> - - <listitem> - <!-- - Author: Alexander Korotkov <akorotkov@postgresql.org> - 2019-09-16 [b64b857f5] Support for SSSSS datetime format pattern - --> - - <para> - Add <literal>SSSSS</literal> time format specification as an - <acronym>SQL</acronym> standard alias for <literal>SSSS</literal> - (Nikita Glukhov, Alexander Korotkov) - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2019-07-14 [5925e5549] Add gen_random_uuid function - --> - - <para> - Add function <link - linkend="functions-uuid"><function>gen_random_uuid()</function></link> - to generate version 4 UUIDs (Peter Eisentraut) - </para> - - <para> - Previously <acronym>UUID</acronym> generation functions were only - available external modules <xref linkend="uuid-ossp"/> or <xref - linkend="pgcrypto"/> were installed. - </para> - - </listitem> - - <listitem> - <!-- - Author: Dean Rasheed <dean.a.rasheed@gmail.com> - 2020-01-25 [13661ddd7] Add functions gcd() and lcm() for integer and numeric ty - --> - - <para> - Add greatest-common-denominator (<link - linkend="functions-math-func-table">gcd</link>) and - least-common-multiple (lcm) functions (Vik Fearing) - </para> - - </listitem> - - <listitem> - <!-- - Author: Dean Rasheed <dean.a.rasheed@gmail.com> - 2020-03-01 [43a899f41] Fix corner-case loss of precision in numeric ln(). - Author: Dean Rasheed <dean.a.rasheed@gmail.com> - 2020-03-28 [4083f445c] Improve the performance and accuracy of numeric sqrt() a - --> - - <para> - Improve the performance and accuracy of <link - linkend="functions-math-func-table">square root</link> and natural log - (ln) output (Dean Rasheed) - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-01-06 [20d6225d1] Add functions min_scale(numeric) and trim_scale(numeric) - --> - - <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 - (Pavel Stehule) - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-01-06 [20d6225d1] Add functions min_scale(numeric) and trim_scale(numeric) - --> - - <para> - Add function <link - linkend="functions-math-func-table"><function>trim_scale()</function></link> - to reduce the scale of a number by removing trailing zeros (Pavel - Stehule) - </para> - - </listitem> - - <listitem> - <!-- - Author: Alexander Korotkov <akorotkov@postgresql.org> - 2019-07-14 [6254c55f8] Add missing commutators for distance operators - --> - - <para> - Add commutators of <link linkend="functions-geometry-op-table">distance - operators</link> (Nikita Glukhov) - </para> - - <para> - For example, previously only point <-> line was supported, - now line <-> point works too. - </para> - - </listitem> - - <listitem> - <!-- - Author: Thomas Munro <tmunro@postgresql.org> - 2020-04-07 [4c04be9b0] Introduce xid8-based functions to replace txid_XXX. - --> - - <para> - Create xid8 versions of all <link - linkend="functions-pg-snapshot">transaction id functions</link> - (Thomas Munro) - </para> - - <para> - The old function names were kept for backward compatibility. DO WE - HAVE NEW NAMES? - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-04-07 [26a944cf2] Adjust bytea get_bit/set_bit to use int8 not int4 for bi - --> - - <para> - Allow <link - linkend="functions-binarystring-other"><function>get_bit()</function></link> - and <function>set_bit()</function> to set bits beyond 256MB of bytea - data (Movead Li) - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2019-08-01 [4886da832] Mark advisory-lock functions as parallel restricted, not - --> - - <para> - Allow <link linkend="functions-advisory-locks">advisory-lock - functions</link> to be used in some parallel operations (Tom Lane) - </para> - - </listitem> - - <listitem> - <!-- - Author: Alvaro Herrera <alvherre@alvh.no-ip.org> - 2020-04-20 [5fc703946] Add ALTER .. NO DEPENDS ON - --> - - <para> - Add the ability to remove an object's dependency on an extension - (Álvaro Herrera) - </para> - - <para> - The object can be a function, materialized view, index, or trigger. - The syntax is <command>ALTER .. NO DEPENDS ON</command>. - </para> - - </listitem> + <listitem> +<!-- +Author: Andrew Dunstan <andrew@dunslane.net> +2020-01-17 [a83586b55] Add a non-strict version of jsonb_set +--> + + <para> + Add alternate version of <link + linkend="functions-json-processing-table"><function>jsonb_setI()</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? + </para> + </listitem> + + <listitem> +<!-- +Author: Alexander Korotkov <akorotkov@postgresql.org> +2019-09-25 [bffe1bd68] Implement jsonpath .datetime() method +--> + + <para> + Add jsonpath <link + linkend="functions-sqljson-path-operators">.<function>datetime()</function></link> + method (Nikita Glukhov, Teodor Sigaev, Oleg Bartunov, Alexander + Korotkov) + </para> + + <para> + 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. + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2020-04-02 [2991ac5fc] Add SQL functions for Unicode normalization +--> + + <para> + Add <acronym>SQL</acronym> functions <link + linkend="functions-string-sql"><literal>NORMALIZE</literal>()</link> + to normalize Unicode strings, and <link + linkend="collation-nondeterministic"><literal>IS + NORMALIZED</literal></link> to check for normalization (Peter + Eisentraut) + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-03-06 [a6525588b] Allow Unicode escapes in any server encoding, not only U +--> + + <para> + Allow <link linkend="sql-syntax-strings-uescape">Unicode + escapes</link>, e.g., E'\u####', U&'\####', to specify any + character available in the database encoding, even when the database + encoding is not <acronym>UTF</acronym>-8 (Tom Lane) + </para> + + <para> + The Unicode characters must be available in the database encoding. + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-03-03 [d67755049] Allow to_date/to_timestamp to recognize non-English mont +--> + + <para> + Allow <link + linkend="functions-formatting"><function>to_date()</function></link> + and <function>to_timestamp()</function> to recognize non-English + month/day names (Juan José Santamaría Flecha, Tom Lane) + </para> + + <para> + The names recognized are the same as those output by <link + linkend="functions-formatting"><function>to_char()</function></link> + with the same format codes. + </para> + </listitem> + + <listitem> +<!-- +Author: Alexander Korotkov <akorotkov@postgresql.org> +2019-09-16 [d589f9446] Support for FF1-FF6 datetime format patterns +--> + + <para> + Add format specifications FF1-FF6 to control display of 1-6 subsecond + digits (Alexander Korotkov, Nikita Glukhov, Teodor Sigaev, Oleg + Bartunov) + </para> + + <para> + These patterns can be used by <function>to_char()</function>, + <function>to_timestamp()</function>, and jsonpath's + .<function>datetime()</function>. + </para> + </listitem> + + <listitem> +<!-- +Author: Alexander Korotkov <akorotkov@postgresql.org> +2019-09-16 [b64b857f5] Support for SSSSS datetime format pattern +--> + + <para> + Add <literal>SSSSS</literal> time format specification as an + <acronym>SQL</acronym> standard alias for <literal>SSSS</literal> + (Nikita Glukhov, Alexander Korotkov) + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2019-07-14 [5925e5549] Add gen_random_uuid function +--> + + <para> + Add function <link + linkend="functions-uuid"><function>gen_random_uuid()</function></link> + to generate version 4 UUIDs (Peter Eisentraut) + </para> + + <para> + Previously <acronym>UUID</acronym> generation functions were only + available external modules <xref linkend="uuid-ossp"/> or <xref + linkend="pgcrypto"/> were installed. + </para> + </listitem> + + <listitem> +<!-- +Author: Dean Rasheed <dean.a.rasheed@gmail.com> +2020-01-25 [13661ddd7] Add functions gcd() and lcm() for integer and numeric ty +--> + + <para> + Add greatest-common-denominator (<link + linkend="functions-math-func-table">gcd</link>) and + least-common-multiple (lcm) functions (Vik Fearing) + </para> + </listitem> + + <listitem> +<!-- +Author: Dean Rasheed <dean.a.rasheed@gmail.com> +2020-03-01 [43a899f41] Fix corner-case loss of precision in numeric ln(). +Author: Dean Rasheed <dean.a.rasheed@gmail.com> +2020-03-28 [4083f445c] Improve the performance and accuracy of numeric sqrt() a +--> + + <para> + Improve the performance and accuracy of <link + linkend="functions-math-func-table">square root</link> and natural log + (ln) output (Dean Rasheed) + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-01-06 [20d6225d1] Add functions min_scale(numeric) and trim_scale(numeric) +--> + + <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 + (Pavel Stehule) + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-01-06 [20d6225d1] Add functions min_scale(numeric) and trim_scale(numeric) +--> + + <para> + Add function <link + linkend="functions-math-func-table"><function>trim_scale()</function></link> + to reduce the scale of a number by removing trailing zeros (Pavel + Stehule) + </para> + </listitem> + + <listitem> +<!-- +Author: Alexander Korotkov <akorotkov@postgresql.org> +2019-07-14 [6254c55f8] Add missing commutators for distance operators +--> + + <para> + Add commutators of <link linkend="functions-geometry-op-table">distance + operators</link> (Nikita Glukhov) + </para> + + <para> + For example, previously only point <-> line was supported, + now line <-> point works too. + </para> + </listitem> + + <listitem> +<!-- +Author: Thomas Munro <tmunro@postgresql.org> +2020-04-07 [4c04be9b0] Introduce xid8-based functions to replace txid_XXX. +--> + + <para> + Create xid8 versions of all <link + linkend="functions-pg-snapshot">transaction id functions</link> + (Thomas Munro) + </para> + + <para> + The old function names were kept for backward compatibility. DO WE + HAVE NEW NAMES? + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-04-07 [26a944cf2] Adjust bytea get_bit/set_bit to use int8 not int4 for bi +--> + + <para> + Allow <link + linkend="functions-binarystring-other"><function>get_bit()</function></link> + and <function>set_bit()</function> to set bits beyond 256MB of bytea + data (Movead Li) + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2019-08-01 [4886da832] Mark advisory-lock functions as parallel restricted, not +--> + + <para> + Allow <link linkend="functions-advisory-locks">advisory-lock + functions</link> to be used in some parallel operations (Tom Lane) + </para> + </listitem> + + <listitem> +<!-- +Author: Alvaro Herrera <alvherre@alvh.no-ip.org> +2020-04-20 [5fc703946] Add ALTER .. NO DEPENDS ON +--> + + <para> + Add the ability to remove an object's dependency on an extension + (Álvaro Herrera) + </para> + + <para> + The object can be a function, materialized view, index, or trigger. + The syntax is <command>ALTER .. NO DEPENDS ON</command>. + </para> + </listitem> </itemizedlist> @@ -2072,32 +1956,29 @@ <itemizedlist> - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-03-26 [8f59f6b9c] Improve performance of "simple expressions" in PL/pgSQL. - --> - - <para> - Improve performance of simple PL/pgSQL expressions (Tom Lane, - Amit Langote) - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2019-11-22 [73b06cf89] Avoid taking a new snapshot for an immutable simple expr - --> - - <para> - Improve the performance of PL/pgSQL functions that use immutable - expressions (Konstantin Knizhnik) - </para> - - </listitem> - + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-03-26 [8f59f6b9c] Improve performance of "simple expressions" in PL/pgSQL. +--> + + <para> + Improve performance of simple PL/pgSQL expressions (Tom Lane, + Amit Langote) + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2019-11-22 [73b06cf89] Avoid taking a new snapshot for an immutable simple expr +--> + + <para> + Improve the performance of PL/pgSQL functions that use immutable + expressions (Konstantin Knizhnik) + </para> + </listitem> </itemizedlist> @@ -2108,90 +1989,84 @@ <itemizedlist> - <listitem> - <!-- - Author: Jeff Davis <jdavis@postgresql.org> - 2019-09-23 [d6e612f83] Add libpq parameter 'channel_binding'. - --> - - <para> - Allow libpq clients to require channel binding (Jeff Davis) - </para> - - <para> - Using the libpq connection parameter <link - linkend="libpq-connect-channel-binding"><literal>channel_binding</literal></link> - forces the other end of the <acronym>TLS</acronym> connection to prove - it knows the user's password. This prevents man-in-the-middle attacks. - </para> - - </listitem> - - <listitem> - <!-- - Author: Michael Paquier <michael@paquier.xyz> - 2020-01-28 [ff8ca5fad] Add connection parameters to control SSL protocol min/ma - Author: Michael Paquier <michael@paquier.xyz> - 2020-04-30 [401aad670] Rename connection parameters to control min/max SSL prot - --> - - <para> - Add libpq connection parameters to control the min/max - <acronym>TLS</acronym> version (Daniel Gustafsson) - </para> - - <para> - The settings are <xref - linkend="libpq-connect-ssl-min-protocol-version"/> and <xref - linkend="libpq-connect-ssl-max-protocol-version"/>. - </para> - - </listitem> - - <listitem> - <!-- - Author: Fujii Masao <fujii@postgresql.org> - 2020-03-05 [2eb3bc588] Fix issues around .pgpass file. - --> - - <para> - Tighten line length and comment detection in <link - linkend="libpq-pgpass">.pgpass</link> files (Fujii Masao) - </para> - - </listitem> - - <listitem> - <!-- - Author: Andrew Dunstan <andrew@dunslane.net> - 2019-11-30 [4dc635521] libq support for sslpassword connection param, DER form - --> - - <para> - Allow specification of passwords to unlock client certificates (Craig - Ringer, Andrew Dunstan) - </para> - - <para> - This is specified by the <xref linkend="libpq-connect-sslpassword"/> - connection option. - </para> - - </listitem> - - <listitem> - <!-- - Author: Andrew Dunstan <andrew@dunslane.net> - 2019-11-30 [4dc635521] libq support for sslpassword connection param, DER form - --> - - <para> - Allow <acronym>DER</acronym>-encoded client certificates (Craig Ringer, - Andrew Dunstan) - </para> - - </listitem> - + <listitem> +<!-- +Author: Jeff Davis <jdavis@postgresql.org> +2019-09-23 [d6e612f83] Add libpq parameter 'channel_binding'. +--> + + <para> + Allow libpq clients to require channel binding (Jeff Davis) + </para> + + <para> + Using the libpq connection parameter <link + linkend="libpq-connect-channel-binding"><literal>channel_binding</literal></link> + forces the other end of the <acronym>TLS</acronym> connection to prove + it knows the user's password. This prevents man-in-the-middle attacks. + </para> + </listitem> + + <listitem> +<!-- +Author: Michael Paquier <michael@paquier.xyz> +2020-01-28 [ff8ca5fad] Add connection parameters to control SSL protocol min/ma +Author: Michael Paquier <michael@paquier.xyz> +2020-04-30 [401aad670] Rename connection parameters to control min/max SSL prot +--> + + <para> + Add libpq connection parameters to control the min/max + <acronym>TLS</acronym> version (Daniel Gustafsson) + </para> + + <para> + The settings are <xref + linkend="libpq-connect-ssl-min-protocol-version"/> and <xref + linkend="libpq-connect-ssl-max-protocol-version"/>. + </para> + </listitem> + + <listitem> +<!-- +Author: Fujii Masao <fujii@postgresql.org> +2020-03-05 [2eb3bc588] Fix issues around .pgpass file. +--> + + <para> + Tighten line length and comment detection in <link + linkend="libpq-pgpass">.pgpass</link> files (Fujii Masao) + </para> + </listitem> + + <listitem> +<!-- +Author: Andrew Dunstan <andrew@dunslane.net> +2019-11-30 [4dc635521] libq support for sslpassword connection param, DER form +--> + + <para> + Allow specification of passwords to unlock client certificates (Craig + Ringer, Andrew Dunstan) + </para> + + <para> + This is specified by the <xref linkend="libpq-connect-sslpassword"/> + connection option. + </para> + </listitem> + + <listitem> +<!-- +Author: Andrew Dunstan <andrew@dunslane.net> +2019-11-30 [4dc635521] libq support for sslpassword connection param, DER form +--> + + <para> + Allow <acronym>DER</acronym>-encoded client certificates (Craig Ringer, + Andrew Dunstan) + </para> + </listitem> </itemizedlist> @@ -2205,154 +2080,146 @@ <itemizedlist> - <listitem> - <!-- - Author: Michael Paquier <michael@paquier.xyz> - 2020-02-12 [dcdbb5a5d] Add %x to default PROMPT1 and PROMPT2 in psql - --> - - <para> - Add the transaction status (%x) to the default <link - linkend="app-psql-prompting"><application>psql</application> - prompts</link> (Vik Fearing) - </para> - - </listitem> - - <listitem> - <!-- - Author: Thomas Munro <tmunro@postgresql.org> - 2019-11-19 [7f338369c] Allow invisible PROMPT2 in psql. - --> - - <para> - Allow the secondary <application>psql</application> prompt to be same - number of spaces as the primary prompt (Thomas Munro) - </para> - - <para> - This is accomplished by setting PROMPT2 to %w. - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-04-07 [b63c293bc] Allow psql's \g and \gx commands to transiently change \ - --> - - <para> - Allow <link linkend="app-psql-meta-commands">\g</link> and \gx to - change any <link linkend="app-psql-meta-commands">\pset</link> output - options for a single command (Tom Lane) - </para> - - <para> - This allows syntax like \g (expand=on), which is equivalent to \gx. - </para> - - </listitem> - - <listitem> - <!-- - Author: Alexander Korotkov <akorotkov@postgresql.org> - 2020-03-08 [b0b5e20cd] Show opclass and opfamily related information in psql - --> - - <para> - Add <application>psql</application> commands to report operator - classes and operator families (Sergey Cherkashin, Nikita Glukhov, - Alexander Korotkov) - </para> - - <para> - The new commands are <link - linkend="app-psql-meta-commands">\dAc</link>, \dAf, \dAo, and \dAp. - </para> - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2019-07-03 [9a2ea6183] Show table persistence in psql's \dt+ and related comman - --> - - <para> - Show table persistence in <application>psql</application>'s <link - linkend="app-psql-meta-commands">\dt+</link> and related commands - (David Fetter) - </para> - - <para> - In verbose mode, the table/index/view shows if the object is permanent, - temporary, or unlogged. - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2019-07-23 [eb5472da9] Improve psql's \d output for TOAST tables. - --> - - <para> - Improve output of <application>psql</application> <link - linkend="app-psql-meta-commands">\d</link> for <acronym>TOAST</acronym> - tables (Justin Pryzby) - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2019-11-22 [d1c866e57] Make psql redisplay the query buffer after \e. - --> - - <para> - Adjust display of <application>psql</application>'s <link - linkend="app-psql-meta-commands">\e</link> query (Tom Lane) - </para> - - <para> - When exiting the editor, if the query doesn't end with a semicolon - or \g, the query buffer contents will now be displayed. - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2019-07-05 [02e95a504] Add \warn command to psql. - --> - - <para> - Add <link linkend="app-psql-meta-commands">\warn</link> command to - <application>psql</application> (David Fetter) - </para> - - <para> - This is like \echo except that the text is sent to stderr instead - of stdout. - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2020-02-28 [1933ae629] Add PostgreSQL home page to - -help output - --> - - <para> - Add the <productname>PostgreSQL</productname> home page to command-line - <option>--help</option> output (Peter Eisentraut) - </para> - - </listitem> + <listitem> +<!-- +Author: Michael Paquier <michael@paquier.xyz> +2020-02-12 [dcdbb5a5d] Add %x to default PROMPT1 and PROMPT2 in psql +--> + + <para> + Add the transaction status (%x) to the default <link + linkend="app-psql-prompting"><application>psql</application> + prompts</link> (Vik Fearing) + </para> + </listitem> + + <listitem> +<!-- +Author: Thomas Munro <tmunro@postgresql.org> +2019-11-19 [7f338369c] Allow invisible PROMPT2 in psql. +--> + + <para> + Allow the secondary <application>psql</application> prompt to be same + number of spaces as the primary prompt (Thomas Munro) + </para> + + <para> + This is accomplished by setting PROMPT2 to %w. + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-04-07 [b63c293bc] Allow psql's \g and \gx commands to transiently change \ +--> + + <para> + Allow <link linkend="app-psql-meta-commands">\g</link> and \gx to + change any <link linkend="app-psql-meta-commands">\pset</link> output + options for a single command (Tom Lane) + </para> + + <para> + This allows syntax like \g (expand=on), which is equivalent to \gx. + </para> + </listitem> + + <listitem> +<!-- +Author: Alexander Korotkov <akorotkov@postgresql.org> +2020-03-08 [b0b5e20cd] Show opclass and opfamily related information in psql +--> + + <para> + Add <application>psql</application> commands to report operator + classes and operator families (Sergey Cherkashin, Nikita Glukhov, + Alexander Korotkov) + </para> + + <para> + The new commands are <link + linkend="app-psql-meta-commands">\dAc</link>, \dAf, \dAo, and \dAp. + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2019-07-03 [9a2ea6183] Show table persistence in psql's \dt+ and related comman +--> + + <para> + Show table persistence in <application>psql</application>'s <link + linkend="app-psql-meta-commands">\dt+</link> and related commands + (David Fetter) + </para> + + <para> + In verbose mode, the table/index/view shows if the object is permanent, + temporary, or unlogged. + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2019-07-23 [eb5472da9] Improve psql's \d output for TOAST tables. +--> + + <para> + Improve output of <application>psql</application> <link + linkend="app-psql-meta-commands">\d</link> for <acronym>TOAST</acronym> + tables (Justin Pryzby) + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2019-11-22 [d1c866e57] Make psql redisplay the query buffer after \e. +--> + + <para> + Adjust display of <application>psql</application>'s <link + linkend="app-psql-meta-commands">\e</link> query (Tom Lane) + </para> + + <para> + When exiting the editor, if the query doesn't end with a semicolon + or \g, the query buffer contents will now be displayed. + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2019-07-05 [02e95a504] Add \warn command to psql. +--> + + <para> + Add <link linkend="app-psql-meta-commands">\warn</link> command to + <application>psql</application> (David Fetter) + </para> + + <para> + This is like \echo except that the text is sent to stderr instead + of stdout. + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2020-02-28 [1933ae629] Add PostgreSQL home page to - -help output +--> + + <para> + Add the <productname>PostgreSQL</productname> home page to command-line + <option>--help</option> output (Peter Eisentraut) + </para> + </listitem> </itemizedlist> @@ -2363,60 +2230,56 @@ <itemizedlist> - <listitem> - <!-- - Author: Amit Kapila <akapila@postgresql.org> - 2019-10-03 [b1c1aa531] pgbench: add - -partitions and - -partition-method options - --> - - <para> - Allow pgbench to partition its 'accounts' table (Fabien Coelho) - </para> - - <para> - This allows performance testing of partitioning. - </para> - - </listitem> - - <listitem> - <!-- - Author: Michael Paquier <michael@paquier.xyz> - 2020-04-03 [9d8ef9880] Add support for \aset in pgbench - --> - - <para> - Add pgbench command \aset, which behaves like \gset, but for multiple - queries (Fabien Coelho) - </para> - - </listitem> - - <listitem> - <!-- - Author: Fujii Masao <fujii@postgresql.org> - 2019-11-06 [a386942bd] Add "G" (server-side data generation) as an initializati - --> - - <para> - Allow pgbench to generate its data server-side, rather than client side - (Fabien Coelho) - </para> - - </listitem> - - <listitem> - <!-- - Author: Thomas Munro <tmunro@postgresql.org> - 2019-07-16 [5823677ac] Provide pgbench - -show-script to dump built-in scripts. - --> - - <para> - Allow pgbench to dump script contents using - <option>--show-script</option> (Fabien Coelho) - </para> - - </listitem> + <listitem> +<!-- +Author: Amit Kapila <akapila@postgresql.org> +2019-10-03 [b1c1aa531] pgbench: add - -partitions and - -partition-method options +--> + + <para> + Allow pgbench to partition its 'accounts' table (Fabien Coelho) + </para> + + <para> + This allows performance testing of partitioning. + </para> + </listitem> + + <listitem> +<!-- +Author: Michael Paquier <michael@paquier.xyz> +2020-04-03 [9d8ef9880] Add support for \aset in pgbench +--> + + <para> + Add pgbench command \aset, which behaves like \gset, but for multiple + queries (Fabien Coelho) + </para> + </listitem> + + <listitem> +<!-- +Author: Fujii Masao <fujii@postgresql.org> +2019-11-06 [a386942bd] Add "G" (server-side data generation) as an initializati +--> + + <para> + Allow pgbench to generate its data server-side, rather than client side + (Fabien Coelho) + </para> + </listitem> + + <listitem> +<!-- +Author: Thomas Munro <tmunro@postgresql.org> +2019-07-16 [5823677ac] Provide pgbench - -show-script to dump built-in scripts. +--> + + <para> + Allow pgbench to dump script contents using + <option>--show-script</option> (Fabien Coelho) + </para> + </listitem> </itemizedlist> @@ -2429,234 +2292,221 @@ <itemizedlist> - <listitem> - <!-- - Author: Robert Haas <rhaas@postgresql.org> - 2020-04-03 [0d8c9c121] Generate backup manifests for base backups, and validate - Author: Robert Haas <rhaas@postgresql.org> - 2020-04-12 [dbc60c559] Rename pg_validatebackup to pg_verifybackup. - --> - - <para> - Generate backup manifests for base backups, and verify them (Robert - Haas) - </para> - - <para> - A new tool <link - linkend="app-pgverifybackup"><application>pg_verifybackup</application>"</link> - can verify backups. - </para> - - </listitem> - - <listitem> - <!-- - Author: Author: Fujii Masao <fujii@postgresql.org> - 2020-03-19 [fab13dc50] Make pg_basebackup ask the server to estimate the total - --> - - <para> - Have <link - linkend="app-pgbasebackup"><application>pg_basebackup</application></link> - estimate the total backup size by default (Fujii Masao) - </para> - - <para> - This computation allows <link - linkend="monitoring-stats-dynamic-views-table"><structname>pg_stat_progress_analyze</structname></link> - to show progress, and can be disabled by using the - <option>--no-estimate-size</option> option. Previously, this - computation happened only if <option>--progress</option> was used. - </para> - - </listitem> - - <listitem> - <!-- - Author: Alvaro Herrera <alvherre@alvh.no-ip.org> - 2019-09-30 [927474ce1] pg_rewind: Allow writing recovery configuration - --> - - <para> - Add <link - linkend="app-pgrewind"><application>pg_rewind</application></link> - option to configure standbys (Paul Guo, Jimmy Yih, Ashwin Agrawal) - </para> - - <para> - This matches <link - linkend="app-pgbasebackup"><application>pg_basebackup</application></link>'s - <option>--write-recovery-conf</option> option. - </para> - - </listitem> - - <listitem> - <!-- - Author: Michael Paquier <michael@paquier.xyz> - 2020-04-01 [a7e8ece41] Add -c/- -restore-target-wal to pg_rewind - --> - - <para> - Allow <application>pg_rewind</application> to use the target - cluster's <xref linkend="guc-restore-command"/> to retrieve needed - <acronym>WAL</acronym> (Alexey Kondratov) - </para> - - <para> - This is enabled using the - <option>-c</option>/<option>--restore-target-wal</option> option. - </para> - - </listitem> - - <listitem> - <!-- - Author: Alvaro Herrera <alvherre@alvh.no-ip.org> - 2019-09-27 [5adafaf17] Have pg_rewind run crash recovery before rewinding - --> - - <para> - Have <application>pg_rewind</application> automatically run crash - recovery before rewinding (Paul Guo, Jimmy Yih, Ashwin Agrawal) - </para> - - <para> - This can be disabled by using <option>--no-ensure-shutdown</option>. - </para> - - </listitem> - - <listitem> - <!-- - Author: Fujii Masao <fujii@postgresql.org> - 2019-11-13 [7b8a899bd] Make pg_waldump report more detail information about PRE - --> - - <para> - Increase <link linkend="sql-prepare-transaction"><command>PREPARE - TRANSACTION</command></link> information reported by - <application>pg_waldump</application> (Fujii Masao) - </para> - - </listitem> - - <listitem> - <!-- - Author: Robert Haas <rhaas@postgresql.org> - 2020-04-02 [ac44367ef] pg_waldump: Add a - -quiet option. - --> - - <para> - Add <link - linkend="pgwaldump"><application>pg_waldump</application></link> - option <option>--quiet</option> to suppress non-error output (Andres - Freund, Robert Haas) - </para> - - </listitem> - - <listitem> - <!-- - Author: Alvaro Herrera <alvherre@alvh.no-ip.org> - 2020-03-25 [2f9eb3132] pg_dump: Allow dumping data of specific foreign servers - --> - - <para> - Allow <link - linkend="app-pgdump"><application>pg_dump</application></link> - <option>--include-foreign-data</option> to dump data from foreign - servers (Luis Carril) - </para> - - </listitem> - - <listitem> - <!-- - Author: Amit Kapila <akapila@postgresql.org> - 2020-01-29 [47bc9ced0] Add - -parallel option to vacuumdb command. - --> - - <para> - Allow vacuum commands run by <link - linkend="app-vacuumdb">vacuumdb</link> to operate in parallel mode - (Masahiko Sawada) - </para> - - <para> - This is enabled with the new <option>--parallel</option> option. - </para> - - </listitem> - - <listitem> - <!-- - Author: Michael Paquier <michael@paquier.xyz> - 2019-07-27 [5ab892c39] Add support for - -jobs in reindexdb - --> - - <para> - Allow <link linkend="app-reindexdb">reindexdb</link> to operate in - parallel (Julien Rouhaud) - </para> - - <para> - Parallel mode is enabled with the new <option>--jobs</option> option. - </para> - - </listitem> - - <listitem> - <!-- - Author: Amit Kapila <akapila@postgresql.org> - 2019-11-20 [80e05a088] Add the support for '-f' option in dropdb utility. - --> - - <para> - Allow <link linkend="app-dropdb">dropdb</link> to force disconnections - so the drop succeeds (Pavel Stehule) - </para> - - <para> - This is enabled with the <option>-f</option> option. - </para> - - </listitem> - - <listitem> - <!-- - Author: Author: Michael Paquier <michael@paquier.xyz> - 2019-10-23 [4fa5edcd1] Remove last traces of - -adduser/- -no-adduser in createus - --> - - <para> - Remove <option>--adduser</option> and <option>--no-adduser</option> - from <link linkend="app-createuser">createuser</link> (Alexander - Lakhin) - </para> - - <para> - The long-supported options for this are called - <option>--superuser</option> and <option>--no-superuser</option>. - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2019-07-27 [959f6d6a1] pg_upgrade: Default new bindir to pg_upgrade location - --> - - <para> - Use the directory of the <link - linkend="pgupgrade"><application>pg_upgrade</application></link> - binary as the default new 'bindir' location when running - <application>pg_upgrade</application> (Daniel Gustafsson) - </para> - - </listitem> + <listitem> +<!-- +Author: Robert Haas <rhaas@postgresql.org> +2020-04-03 [0d8c9c121] Generate backup manifests for base backups, and validate +Author: Robert Haas <rhaas@postgresql.org> +2020-04-12 [dbc60c559] Rename pg_validatebackup to pg_verifybackup. +--> + + <para> + Generate backup manifests for base backups, and verify them (Robert + Haas) + </para> + + <para> + A new tool <link + linkend="app-pgverifybackup"><application>pg_verifybackup</application>"</link> + can verify backups. + </para> + </listitem> + + <listitem> +<!-- +Author: Author: Fujii Masao <fujii@postgresql.org> +2020-03-19 [fab13dc50] Make pg_basebackup ask the server to estimate the total +--> + + <para> + Have <link + linkend="app-pgbasebackup"><application>pg_basebackup</application></link> + estimate the total backup size by default (Fujii Masao) + </para> + + <para> + This computation allows <link + linkend="monitoring-stats-dynamic-views-table"><structname>pg_stat_progress_analyze</structname></link> + to show progress, and can be disabled by using the + <option>--no-estimate-size</option> option. Previously, this + computation happened only if <option>--progress</option> was used. + </para> + </listitem> + + <listitem> +<!-- +Author: Alvaro Herrera <alvherre@alvh.no-ip.org> +2019-09-30 [927474ce1] pg_rewind: Allow writing recovery configuration +--> + + <para> + Add <link + linkend="app-pgrewind"><application>pg_rewind</application></link> + option to configure standbys (Paul Guo, Jimmy Yih, Ashwin Agrawal) + </para> + + <para> + This matches <link + linkend="app-pgbasebackup"><application>pg_basebackup</application></link>'s + <option>--write-recovery-conf</option> option. + </para> + </listitem> + + <listitem> +<!-- +Author: Michael Paquier <michael@paquier.xyz> +2020-04-01 [a7e8ece41] Add -c/- -restore-target-wal to pg_rewind +--> + + <para> + Allow <application>pg_rewind</application> to use the target + cluster's <xref linkend="guc-restore-command"/> to retrieve needed + <acronym>WAL</acronym> (Alexey Kondratov) + </para> + + <para> + This is enabled using the + <option>-c</option>/<option>--restore-target-wal</option> option. + </para> + </listitem> + + <listitem> +<!-- +Author: Alvaro Herrera <alvherre@alvh.no-ip.org> +2019-09-27 [5adafaf17] Have pg_rewind run crash recovery before rewinding +--> + + <para> + Have <application>pg_rewind</application> automatically run crash + recovery before rewinding (Paul Guo, Jimmy Yih, Ashwin Agrawal) + </para> + + <para> + This can be disabled by using <option>--no-ensure-shutdown</option>. + </para> + </listitem> + + <listitem> +<!-- +Author: Fujii Masao <fujii@postgresql.org> +2019-11-13 [7b8a899bd] Make pg_waldump report more detail information about PRE +--> + + <para> + Increase <link linkend="sql-prepare-transaction"><command>PREPARE + TRANSACTION</command></link> information reported by + <application>pg_waldump</application> (Fujii Masao) + </para> + </listitem> + + <listitem> +<!-- +Author: Robert Haas <rhaas@postgresql.org> +2020-04-02 [ac44367ef] pg_waldump: Add a - -quiet option. +--> + + <para> + Add <link + linkend="pgwaldump"><application>pg_waldump</application></link> + option <option>--quiet</option> to suppress non-error output (Andres + Freund, Robert Haas) + </para> + </listitem> + + <listitem> +<!-- +Author: Alvaro Herrera <alvherre@alvh.no-ip.org> +2020-03-25 [2f9eb3132] pg_dump: Allow dumping data of specific foreign servers +--> + + <para> + Allow <link + linkend="app-pgdump"><application>pg_dump</application></link> + <option>--include-foreign-data</option> to dump data from foreign + servers (Luis Carril) + </para> + </listitem> + + <listitem> +<!-- +Author: Amit Kapila <akapila@postgresql.org> +2020-01-29 [47bc9ced0] Add - -parallel option to vacuumdb command. +--> + + <para> + Allow vacuum commands run by <link + linkend="app-vacuumdb">vacuumdb</link> to operate in parallel mode + (Masahiko Sawada) + </para> + + <para> + This is enabled with the new <option>--parallel</option> option. + </para> + </listitem> + + <listitem> +<!-- +Author: Michael Paquier <michael@paquier.xyz> +2019-07-27 [5ab892c39] Add support for - -jobs in reindexdb +--> + + <para> + Allow <link linkend="app-reindexdb">reindexdb</link> to operate in + parallel (Julien Rouhaud) + </para> + + <para> + Parallel mode is enabled with the new <option>--jobs</option> option. + </para> + </listitem> + + <listitem> +<!-- +Author: Amit Kapila <akapila@postgresql.org> +2019-11-20 [80e05a088] Add the support for '-f' option in dropdb utility. +--> + + <para> + Allow <link linkend="app-dropdb">dropdb</link> to force disconnections + so the drop succeeds (Pavel Stehule) + </para> + + <para> + This is enabled with the <option>-f</option> option. + </para> + </listitem> + + <listitem> +<!-- +Author: Author: Michael Paquier <michael@paquier.xyz> +2019-10-23 [4fa5edcd1] Remove last traces of - -adduser/- -no-adduser in createus +--> + + <para> + Remove <option>--adduser</option> and <option>--no-adduser</option> + from <link linkend="app-createuser">createuser</link> (Alexander + Lakhin) + </para> + + <para> + The long-supported options for this are called + <option>--superuser</option> and <option>--no-superuser</option>. + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2019-07-27 [959f6d6a1] pg_upgrade: Default new bindir to pg_upgrade location +--> + + <para> + Use the directory of the <link + linkend="pgupgrade"><application>pg_upgrade</application></link> + binary as the default new 'bindir' location when running + <application>pg_upgrade</application> (Daniel Gustafsson) + </para> + </listitem> </itemizedlist> @@ -2667,45 +2517,42 @@ <itemizedlist> - <listitem> - <!-- - Author: Alvaro Herrera <alvherre@alvh.no-ip.org> - 2020-04-03 [347d2b07f] Add a glossary to the documentation - --> - - <para> - Add a <link linkend="glossary">glossary</link> to the documentation - (Corey Huinker, Jürgen Purtz, Roger Harkavy, Álvaro - Herrera) - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-04-12 [e894c6183] Doc: introduce new layout for tables of functions and op - --> - - <para> - Reformat tables containing <link linkend="functions">function - information</link> for better clarity (Tom Lane) - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2019-08-13 [416c75cf3] Update to DocBook 4.5 - --> - - <para> - Upgrade to use <link linkend="docguide-docbook">DocBook 4.5</link> - (Peter Eisentraut) - </para> - - </listitem> + <listitem> +<!-- +Author: Alvaro Herrera <alvherre@alvh.no-ip.org> +2020-04-03 [347d2b07f] Add a glossary to the documentation +--> + + <para> + Add a <link linkend="glossary">glossary</link> to the documentation + (Corey Huinker, Jürgen Purtz, Roger Harkavy, Álvaro + Herrera) + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-04-12 [e894c6183] Doc: introduce new layout for tables of functions and op +--> + + <para> + Reformat tables containing <link linkend="functions">function + information</link> for better clarity (Tom Lane) + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2019-08-13 [416c75cf3] Update to DocBook 4.5 +--> + + <para> + Upgrade to use <link linkend="docguide-docbook">DocBook 4.5</link> + (Peter Eisentraut) + </para> + </listitem> </itemizedlist> @@ -2716,271 +2563,252 @@ <itemizedlist> - <listitem> - <!-- - Author: Michael Paquier <michael@paquier.xyz> - 2019-07-02 [2b1394fc2] Add support for Visual Studio 2019 in build scripts - --> - - <para> - Add support for building on Visual Studio 2019 (Haribabu Kommi) - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2019-12-19 [e975c1a60] Add support for MSYS2 - --> - - <para> - Add build support for MSYS2 (Peter Eisentraut) - </para> - - </listitem> - - <listitem> - <!-- - Author: Noah Misch <noah@leadboat.com> - 2019-10-18 [30ee5d17c] For all ppc compilers, implement compare_exchange and fe - --> - - <para> - Add compare_exchange and fetch_add assembly language code for Power - PC compilers (Noah Misch) - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2019-07-04 [7b925e127] Sync our Snowball stemmer dictionaries with current upst - --> - - <para> - Update <link linkend="textsearch-snowball-dictionary">Snowball - stemmer</link> dictionaries used by full text search (Panagiotis - Mavrogiorgos) - </para> - - <para> - This adds Greek stemming and improves Danish and French stemming. - </para> - - </listitem> - - <listitem> - <!-- - Author: Michael Paquier <michael@paquier.xyz> - 2020-02-19 [e2e02191e] Clean up some code, comments and docs referring to Windo - --> - - <para> - Remove support for Windows 2000 (Michael Paquier) - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2019-07-01 [c72f9b950] Remove support for non-ELF BSD systems - --> - - <para> - Remove support for non-<acronym>ELF</acronym> <acronym>BSD</acronym> - systems (Peter Eisentraut) - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2020-01-08 [37f21ed13] Remove support for Python older than 2.6 - --> - - <para> - Remove <link linkend="plpython">support</link> for Python versions - 2.5.X and earlier (Peter Eisentraut) - </para> - - </listitem> - - <listitem> - <!-- - Author: Michael Paquier <michael@paquier.xyz> - 2020-01-06 [7b283d0e1] Remove support for OpenSSL 0.9.8 and 1.0.0 - --> - - <para> - Remove <link linkend="install-short">support</link> for OpenSSL 0.9.8 - and 1.0.0 (Michael Paquier) - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2019-11-27 [4513d8b07] Move configure - -disable-float8-byval to pg_config_manua - --> - - <para> - Remove <link linkend="install-short">support</link> option - <option>--disable-float</option>8-byval (Peter Eisentraut) - </para> - - <para> - This was needed for previously supported version-zero functions. - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2019-11-21 [2e4db241b] Remove configure - -disable-float4-byval - --> - - <para> - Remove configure option <option>--disable-float4-byval</option> - (Peter Eisentraut) - </para> - - <para> - This was needed for previously supported version-zero functions. - </para> - - </listitem> - - <listitem> - <!-- - Author: Fujii Masao <fujii@postgresql.org> - 2020-03-30 [6aba63ef3] Allow the planner-related functions and hook to accept t - --> - - <para> - Add the query string to planner hook functions (Pascal Legrand, - Julien Rouhaud) - </para> - - </listitem> - - <listitem> - <!-- - Author: Joe Conway <mail@joeconway.com> - 2019-11-23 [f7a2002e8] Add object TRUNCATE hook - --> - - <para> - Add <link linkend="sql-truncate"><command>TRUNCATE</command></link> - command hook (Yuli Khodorkovskiy) - </para> - - </listitem> - - <listitem> - <!-- - Author: Andrew Dunstan <andrew@dunslane.net> - 2020-03-25 [896fcdb23] Provide a TLS init hook - --> - - <para> - Add <acronym>TLS</acronym> init hook (Andrew Dunstan) - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2020-01-31 [a9cff89f7] Allow building without default socket directory - --> - - <para> - Allow building with no predefined Unix-domain socket directory - (Peter Eisentraut) - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2019-09-05 [7de19fbc0] Use data directory inode number, not port, to select Sys - --> - - <para> - Reduce the probability of SysV resource key collision on Unix platforms - (Tom Lane) - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Eisentraut <peter@eisentraut.org> - 2019-09-05 [74a308cf5] Use explicit_bzero - --> - - <para> - Use operating system functions to cleanly erase memory that contains - sensitive information (Peter Eisentraut) - </para> - - <para> - For example, this is used for clearing passwords stored in memory. - </para> - - </listitem> - - <listitem> - <!-- - Author: Author: Tom Lane <tgl@sss.pgh.pa.us> - 2019-08-19 [55ea10918] Add "headerscheck" script to test header-file compilabil - --> - - <para> - Add "headerscheck" script to test C header-file compatibility - (Tom Lane) - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2019-07-15 [1cff1b95a] Represent Lists as expansible arrays, not chains of cons - --> - - <para> - Implement internal lists as arrays, rather than a chain of structures - (Tom Lane) - </para> - - <para> - This improves performance for queries that access many object. - The internal List <acronym>API</acronym> has also been improved. - </para> - - </listitem> - - <listitem> - <!-- - Author: Michael Paquier <michael@paquier.xyz> - 2019-07-13 [39aadc984] Fix some inconsistencies in MSVC scripts - --> - - <para> - Update <link linkend="install-windows">Windows build scripts</link> - to use the modern <option>--with-uuid</option> flag for - <acronym>UUID</acronym> libraries (Kyotaro Horiguchi) - </para> - - </listitem> + <listitem> +<!-- +Author: Michael Paquier <michael@paquier.xyz> +2019-07-02 [2b1394fc2] Add support for Visual Studio 2019 in build scripts +--> + + <para> + Add support for building on Visual Studio 2019 (Haribabu Kommi) + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2019-12-19 [e975c1a60] Add support for MSYS2 +--> + + <para> + Add build support for MSYS2 (Peter Eisentraut) + </para> + </listitem> + + <listitem> +<!-- +Author: Noah Misch <noah@leadboat.com> +2019-10-18 [30ee5d17c] For all ppc compilers, implement compare_exchange and fe +--> + + <para> + Add compare_exchange and fetch_add assembly language code for Power + PC compilers (Noah Misch) + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2019-07-04 [7b925e127] Sync our Snowball stemmer dictionaries with current upst +--> + + <para> + Update <link linkend="textsearch-snowball-dictionary">Snowball + stemmer</link> dictionaries used by full text search (Panagiotis + Mavrogiorgos) + </para> + + <para> + This adds Greek stemming and improves Danish and French stemming. + </para> + </listitem> + + <listitem> +<!-- +Author: Michael Paquier <michael@paquier.xyz> +2020-02-19 [e2e02191e] Clean up some code, comments and docs referring to Windo +--> + + <para> + Remove support for Windows 2000 (Michael Paquier) + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2019-07-01 [c72f9b950] Remove support for non-ELF BSD systems +--> + + <para> + Remove support for non-<acronym>ELF</acronym> <acronym>BSD</acronym> + systems (Peter Eisentraut) + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2020-01-08 [37f21ed13] Remove support for Python older than 2.6 +--> + + <para> + Remove <link linkend="plpython">support</link> for Python versions + 2.5.X and earlier (Peter Eisentraut) + </para> + </listitem> + + <listitem> +<!-- +Author: Michael Paquier <michael@paquier.xyz> +2020-01-06 [7b283d0e1] Remove support for OpenSSL 0.9.8 and 1.0.0 +--> + + <para> + Remove <link linkend="install-short">support</link> for OpenSSL 0.9.8 + and 1.0.0 (Michael Paquier) + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2019-11-27 [4513d8b07] Move configure - -disable-float8-byval to pg_config_manua +--> + + <para> + Remove <link linkend="install-short">support</link> option + <option>--disable-float</option>8-byval (Peter Eisentraut) + </para> + + <para> + This was needed for previously supported version-zero functions. + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2019-11-21 [2e4db241b] Remove configure - -disable-float4-byval +--> + + <para> + Remove configure option <option>--disable-float4-byval</option> + (Peter Eisentraut) + </para> + + <para> + This was needed for previously supported version-zero functions. + </para> + </listitem> + + <listitem> +<!-- +Author: Fujii Masao <fujii@postgresql.org> +2020-03-30 [6aba63ef3] Allow the planner-related functions and hook to accept t +--> + + <para> + Add the query string to planner hook functions (Pascal Legrand, + Julien Rouhaud) + </para> + </listitem> + + <listitem> +<!-- +Author: Joe Conway <mail@joeconway.com> +2019-11-23 [f7a2002e8] Add object TRUNCATE hook +--> + + <para> + Add <link linkend="sql-truncate"><command>TRUNCATE</command></link> + command hook (Yuli Khodorkovskiy) + </para> + </listitem> + + <listitem> +<!-- +Author: Andrew Dunstan <andrew@dunslane.net> +2020-03-25 [896fcdb23] Provide a TLS init hook +--> + + <para> + Add <acronym>TLS</acronym> init hook (Andrew Dunstan) + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2020-01-31 [a9cff89f7] Allow building without default socket directory +--> + + <para> + Allow building with no predefined Unix-domain socket directory + (Peter Eisentraut) + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2019-09-05 [7de19fbc0] Use data directory inode number, not port, to select Sys +--> + + <para> + Reduce the probability of SysV resource key collision on Unix platforms + (Tom Lane) + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Eisentraut <peter@eisentraut.org> +2019-09-05 [74a308cf5] Use explicit_bzero +--> + + <para> + Use operating system functions to cleanly erase memory that contains + sensitive information (Peter Eisentraut) + </para> + + <para> + For example, this is used for clearing passwords stored in memory. + </para> + </listitem> + + <listitem> +<!-- +Author: Author: Tom Lane <tgl@sss.pgh.pa.us> +2019-08-19 [55ea10918] Add "headerscheck" script to test header-file compilabil +--> + + <para> + Add "headerscheck" script to test C header-file compatibility + (Tom Lane) + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2019-07-15 [1cff1b95a] Represent Lists as expansible arrays, not chains of cons +--> + + <para> + Implement internal lists as arrays, rather than a chain of structures + (Tom Lane) + </para> + + <para> + This improves performance for queries that access many object. + The internal List <acronym>API</acronym> has also been improved. + </para> + </listitem> + + <listitem> +<!-- +Author: Michael Paquier <michael@paquier.xyz> +2019-07-13 [39aadc984] Fix some inconsistencies in MSVC scripts +--> + + <para> + Update <link linkend="install-windows">Windows build scripts</link> + to use the modern <option>--with-uuid</option> flag for + <acronym>UUID</acronym> libraries (Kyotaro Horiguchi) + </para> + </listitem> </itemizedlist> @@ -2991,224 +2819,209 @@ <itemizedlist> - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-01-29 [50fc694e4] Invent "trusted" extensions, and remove the pg_pltemplat - --> - - <para> - Allow <link linkend="sql-createextension">extensions</link> to be - specified as trusted (Tom Lane) - </para> - - <para> - Such extensions can be installed in a database by users with creation - rights, even if they are not superusers. This change also removes - the <structname>pg_pltemplate</structname> system catalog. - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-02-19 [70a773200] Remove support for upgrading extensions from "unpackaged - --> - - <para> - Remove support for upgrading "unpackaged" extensions (Tom Lane) - </para> - - </listitem> - - <listitem> - <!-- - Author: Andrew Dunstan <andrew@dunslane.net> - 2019-12-20 [6136e94dc] Superuser can permit passwordless connections on postgre - --> - - <para> - Allow non-superusers to connect to <xref linkend="postgres-fdw"/> - foreign servers without using a password (Craig Ringer) - </para> - - <para> - Specifically, allow <link linkend="sql-alterusermapping"><command>ALTER - USER MAPPING</command></link> to set - <literal>password_required</literal> to false. Care must still be - taken to avoid non-superusers from using superuser credentials to - connect to the foreign server. - </para> - - </listitem> - - <listitem> - <!-- - Author: Andrew Dunstan <andrew@dunslane.net> - 2020-01-09 [f5fd995a1] Allow 'sslkey' and 'sslcert' in postgres_fdw user mappin - --> - - <para> - Allow <application>postgres_fdw</application> to use certificate - authentication (Craig Ringer) - </para> - - <para> - Different users can use different certificates. - </para> - - </listitem> - - <listitem> - <!-- - Author: Joe Conway <mail@joeconway.com> - 2019-11-23 [4f66c93f6] Update sepgsql to add mandatory access control for TRUNC - --> - - <para> - Allow <xref linkend="sepgsql"/> to control access to the - <command>TRUNCATE</command> command (Yuli Khodorkovskiy) - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-03-06 [36058a3c5] Create contrib/bool_plperl to provide a bool transform f - --> - - <para> - Add extension <application>bool_plperl</application> which transforms - <acronym>SQL</acronym> booleans to/from PL/Perl booleans (Ivan - Panchenko) WHERE IS THIS DOCUMENTED? - </para> - - </listitem> - - <listitem> - <!-- - Author: Andrew Gierth <rhodiumtoad@postgresql.org> - 2019-07-14 [6e74c64bc] Teach pg_stat_statements not to ignore FOR UPDATE clause - --> - - <para> - Have <xref linkend="pgstatstatements"/> treat <command>SELECT - ... FOR UPDATE</command> as distinct from those without <command>FOR - UPDATE</command> (Andrew Gierth, Vik Fearing) - </para> - - </listitem> - - <listitem> - <!-- - Author: Fujii Masao <fujii@postgresql.org> - 2020-04-02 [17e032822] Allow pg_stat_statements to track planning statistics. - --> - - <para> - Allow <application>pg_stat_statements</application> to optionally - track the planning time of statements (Julien Rouhaud, Pascal Legrand, - Thomas Munro, Fujii Masao) - </para> - - <para> - Previously only execution time was tracked. - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-03-31 [70dc4c509] Fix lquery's NOT handling, and add ability to quantify n - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-04-01 [17ca06799] Clean up parsing of ltree and lquery some more. - --> - - <para> - Overhaul <xref linkend="ltree"/>'s lquery syntax to treat - <literal>NOT</literal> (!) more logically (Filip Rembialkowski, - Tom Lane, Nikita Glukhov) - </para> - - <para> - Also allow non-* queries to use a numeric range ({}) of matches. - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-04-01 [949a9f043] Add support for binary I/O of ltree, lquery, and ltxtque - --> - - <para> - Add support for binary I/O of <xref linkend="ltree"/>, lquery, and - ltxtquery types (Nino Floris) - </para> - - </listitem> - - <listitem> - <!-- - Author: Tom Lane <tgl@sss.pgh.pa.us> - 2020-03-08 [806eb92c0] Add an "absval" parameter to allow contrib/dict_int to i - --> - - <para> - Add option to <xref linkend="dict-int"/> extension to ignore the sign - of integers (Jeff Janes) - </para> - - </listitem> - - <listitem> - <!-- - Author: Fujii Masao <fujii@postgresql.org> - 2020-01-24 [d694e0bb7] Add pg_file_sync() to adminpack extension. - --> - - <para> - Add <xref linkend="adminpack"/> function - <function>pg_file_sync()</function> to allow fsync'ing a file - (Fujii Masao) - </para> - - </listitem> - - <listitem> - <!-- - Author: Michael Paquier <michael@paquier.xyz> - 2019-09-12 [ddbd5d873] Add to pageinspect function to make t_infomask/t_infomas - Author: Author: Michael Paquier <michael@paquier.xyz> - 2019-09-19 [58b4cb30a] Redesign pageinspect function printing infomask bits - --> - - <para> - Add <xref linkend="pageinspect"/> functions to output - <structfield>t_infomask</structfield>/<structfield>t_infomask2</structfield> - values in human-readable format (Craig Ringer, Sawada Masahiko, - Michael Paquier) - </para> - - </listitem> - - <listitem> - <!-- - Author: Peter Geoghegan <pg@bowt.ie> - 2020-02-29 [93ee38ead] Teach pageinspect about nbtree deduplication. - --> - - <para> - Add btree index deduplication processing columns to pageinspect output - (Peter Geoghegan) - </para> - - </listitem> - + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-01-29 [50fc694e4] Invent "trusted" extensions, and remove the pg_pltemplat +--> + + <para> + Allow <link linkend="sql-createextension">extensions</link> to be + specified as trusted (Tom Lane) + </para> + + <para> + Such extensions can be installed in a database by users with creation + rights, even if they are not superusers. This change also removes + the <structname>pg_pltemplate</structname> system catalog. + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-02-19 [70a773200] Remove support for upgrading extensions from "unpackaged +--> + + <para> + Remove support for upgrading "unpackaged" extensions (Tom Lane) + </para> + </listitem> + + <listitem> +<!-- +Author: Andrew Dunstan <andrew@dunslane.net> +2019-12-20 [6136e94dc] Superuser can permit passwordless connections on postgre +--> + + <para> + Allow non-superusers to connect to <xref linkend="postgres-fdw"/> + foreign servers without using a password (Craig Ringer) + </para> + + <para> + Specifically, allow <link linkend="sql-alterusermapping"><command>ALTER + USER MAPPING</command></link> to set + <literal>password_required</literal> to false. Care must still be + taken to avoid non-superusers from using superuser credentials to + connect to the foreign server. + </para> + </listitem> + + <listitem> +<!-- +Author: Andrew Dunstan <andrew@dunslane.net> +2020-01-09 [f5fd995a1] Allow 'sslkey' and 'sslcert' in postgres_fdw user mappin +--> + + <para> + Allow <application>postgres_fdw</application> to use certificate + authentication (Craig Ringer) + </para> + + <para> + Different users can use different certificates. + </para> + </listitem> + + <listitem> +<!-- +Author: Joe Conway <mail@joeconway.com> +2019-11-23 [4f66c93f6] Update sepgsql to add mandatory access control for TRUNC +--> + + <para> + Allow <xref linkend="sepgsql"/> to control access to the + <command>TRUNCATE</command> command (Yuli Khodorkovskiy) + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-03-06 [36058a3c5] Create contrib/bool_plperl to provide a bool transform f +--> + + <para> + Add extension <application>bool_plperl</application> which transforms + <acronym>SQL</acronym> booleans to/from PL/Perl booleans (Ivan + Panchenko) WHERE IS THIS DOCUMENTED? + </para> + </listitem> + + <listitem> +<!-- +Author: Andrew Gierth <rhodiumtoad@postgresql.org> +2019-07-14 [6e74c64bc] Teach pg_stat_statements not to ignore FOR UPDATE clause +--> + + <para> + Have <xref linkend="pgstatstatements"/> treat <command>SELECT + ... FOR UPDATE</command> as distinct from those without <command>FOR + UPDATE</command> (Andrew Gierth, Vik Fearing) + </para> + </listitem> + + <listitem> +<!-- +Author: Fujii Masao <fujii@postgresql.org> +2020-04-02 [17e032822] Allow pg_stat_statements to track planning statistics. +--> + + <para> + Allow <application>pg_stat_statements</application> to optionally + track the planning time of statements (Julien Rouhaud, Pascal Legrand, + Thomas Munro, Fujii Masao) + </para> + + <para> + Previously only execution time was tracked. + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-03-31 [70dc4c509] Fix lquery's NOT handling, and add ability to quantify n +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-04-01 [17ca06799] Clean up parsing of ltree and lquery some more. +--> + + <para> + Overhaul <xref linkend="ltree"/>'s lquery syntax to treat + <literal>NOT</literal> (!) more logically (Filip Rembialkowski, + Tom Lane, Nikita Glukhov) + </para> + + <para> + Also allow non-* queries to use a numeric range ({}) of matches. + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-04-01 [949a9f043] Add support for binary I/O of ltree, lquery, and ltxtque +--> + + <para> + Add support for binary I/O of <xref linkend="ltree"/>, lquery, and + ltxtquery types (Nino Floris) + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +2020-03-08 [806eb92c0] Add an "absval" parameter to allow contrib/dict_int to i +--> + + <para> + Add option to <xref linkend="dict-int"/> extension to ignore the sign + of integers (Jeff Janes) + </para> + </listitem> + + <listitem> +<!-- +Author: Fujii Masao <fujii@postgresql.org> +2020-01-24 [d694e0bb7] Add pg_file_sync() to adminpack extension. +--> + + <para> + Add <xref linkend="adminpack"/> function + <function>pg_file_sync()</function> to allow fsync'ing a file + (Fujii Masao) + </para> + </listitem> + + <listitem> +<!-- +Author: Michael Paquier <michael@paquier.xyz> +2019-09-12 [ddbd5d873] Add to pageinspect function to make t_infomask/t_infomas +Author: Author: Michael Paquier <michael@paquier.xyz> +2019-09-19 [58b4cb30a] Redesign pageinspect function printing infomask bits +--> + + <para> + Add <xref linkend="pageinspect"/> functions to output + <structfield>t_infomask</structfield>/<structfield>t_infomask2</structfield> + values in human-readable format (Craig Ringer, Sawada Masahiko, + Michael Paquier) + </para> + </listitem> + + <listitem> +<!-- +Author: Peter Geoghegan <pg@bowt.ie> +2020-02-29 [93ee38ead] Teach pageinspect about nbtree deduplication. +--> + + <para> + Add btree index deduplication processing columns to pageinspect output + (Peter Geoghegan) + </para> + </listitem> </itemizedlist> @@ -3219,11 +3032,11 @@ <sect2 id="release-13-acknowledgements"> <title>Acknowledgments</title> - <para> - The following individuals (in alphabetical order) have contributed to this - release as patch authors, committers, reviewers, testers, or reporters of - issues. - </para> + <para> + The following individuals (in alphabetical order) have contributed to this + release as patch authors, committers, reviewers, testers, or reporters of + issues. + </para> <simplelist> <member></member> |