aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xconfigure18
-rw-r--r--configure.in2
-rw-r--r--doc/src/sgml/filelist.sgml2
-rw-r--r--doc/src/sgml/release-13.sgml3034
-rw-r--r--doc/src/sgml/release-14.sgml16
-rw-r--r--doc/src/sgml/release.sgml2
-rwxr-xr-xsrc/tools/git_changelog1
-rwxr-xr-xsrc/tools/version_stamp.pl2
8 files changed, 30 insertions, 3047 deletions
diff --git a/configure b/configure
index e147a98809d..2feff37fe37 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for PostgreSQL 13beta1.
+# Generated by GNU Autoconf 2.69 for PostgreSQL 14devel.
#
# Report bugs to <pgsql-bugs@lists.postgresql.org>.
#
@@ -582,8 +582,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='PostgreSQL'
PACKAGE_TARNAME='postgresql'
-PACKAGE_VERSION='13beta1'
-PACKAGE_STRING='PostgreSQL 13beta1'
+PACKAGE_VERSION='14devel'
+PACKAGE_STRING='PostgreSQL 14devel'
PACKAGE_BUGREPORT='pgsql-bugs@lists.postgresql.org'
PACKAGE_URL='https://www.postgresql.org/'
@@ -1437,7 +1437,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures PostgreSQL 13beta1 to adapt to many kinds of systems.
+\`configure' configures PostgreSQL 14devel to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1502,7 +1502,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of PostgreSQL 13beta1:";;
+ short | recursive ) echo "Configuration of PostgreSQL 14devel:";;
esac
cat <<\_ACEOF
@@ -1669,7 +1669,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-PostgreSQL configure 13beta1
+PostgreSQL configure 14devel
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2422,7 +2422,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by PostgreSQL $as_me 13beta1, which was
+It was created by PostgreSQL $as_me 14devel, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -19665,7 +19665,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by PostgreSQL $as_me 13beta1, which was
+This file was extended by PostgreSQL $as_me 14devel, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -19736,7 +19736,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-PostgreSQL config.status 13beta1
+PostgreSQL config.status 14devel
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
diff --git a/configure.in b/configure.in
index 1a9891c7782..0188c6ff074 100644
--- a/configure.in
+++ b/configure.in
@@ -17,7 +17,7 @@ dnl Read the Autoconf manual for details.
dnl
m4_pattern_forbid(^PGAC_)dnl to catch undefined macros
-AC_INIT([PostgreSQL], [13beta1], [pgsql-bugs@lists.postgresql.org], [], [https://www.postgresql.org/])
+AC_INIT([PostgreSQL], [14devel], [pgsql-bugs@lists.postgresql.org], [], [https://www.postgresql.org/])
m4_if(m4_defn([m4_PACKAGE_VERSION]), [2.69], [], [m4_fatal([Autoconf version 2.69 is required.
Untested combinations of 'autoconf' and PostgreSQL versions are not
diff --git a/doc/src/sgml/filelist.sgml b/doc/src/sgml/filelist.sgml
index 68179f71cdb..64b5da0070c 100644
--- a/doc/src/sgml/filelist.sgml
+++ b/doc/src/sgml/filelist.sgml
@@ -167,7 +167,7 @@
<!ENTITY sourcerepo SYSTEM "sourcerepo.sgml">
<!ENTITY release SYSTEM "release.sgml">
-<!ENTITY release-13 SYSTEM "release-13.sgml">
+<!ENTITY release-14 SYSTEM "release-14.sgml">
<!ENTITY limits SYSTEM "limits.sgml">
<!ENTITY acronyms SYSTEM "acronyms.sgml">
diff --git a/doc/src/sgml/release-13.sgml b/doc/src/sgml/release-13.sgml
deleted file mode 100644
index 74b91d5a3ff..00000000000
--- a/doc/src/sgml/release-13.sgml
+++ /dev/null
@@ -1,3034 +0,0 @@
-<!-- doc/src/sgml/release-13.sgml -->
-<!-- See header comment in release.sgml about typical markup -->
-
- <sect1 id="release-13">
- <title>Release 13</title>
-
- <formalpara>
- <title>Release date:</title>
- <para>2020-XX-XX, CURRENT AS OF 2020-05-03</para>
- </formalpara>
-
- <sect2>
- <title>Overview</title>
-
- <para>
- Major enhancements in <productname>PostgreSQL</productname> 13 include:
- </para>
-
- <!-- Items in this list summarize one or more items below -->
-
- <itemizedlist>
-
- <listitem>
- <para></para>
- </listitem>
-
- </itemizedlist>
-
- <para>
- The above items are explained in more detail in the sections below.
- </para>
-
- </sect2>
-
- <sect2>
-
- <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)
- </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-01-31 [870ad6a59] Fix not-quite-right string comparison in parse_jsonb_ind
--->
-
- <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.
--->
-
- <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>
-
-<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>
-
- <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>
- </listitem>
-
- <listitem>
-<!--
-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>
- </listitem>
-
- <listitem>
-<!--
-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>
- </listitem>
-
- <listitem>
-<!--
-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>
- </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>PostgreSQL</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>PostgreSQL</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>PostgreSQL</productname> 7.3 servers (Daniel
- Gustafsson)
- </para>
- </listitem>
-
- </itemizedlist>
-
- </sect2>
-
- <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>
-
- <sect3>
- <title>Server</title>
-
- <sect4>
- <title><link linkend="ddl-partitioning">Partitioning</link></title>
-
- <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, &Aacute;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 (&Aacute;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 <xref linkend="sql-createpublication"/> 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>
-
- </sect4>
-
- <sect4>
- <title>Indexes</title>
-
- <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 <xref linkend="pgupgrade"/> will need to use <xref
- linkend="sql-reindex"/> 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 <xref linkend="gist"/> and <xref
- linkend="spgist"/> 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 <xref linkend="gin"/> 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>
-
- </sect4>
-
- <sect4>
- <title>Optimizer</title>
-
- <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>
-
- </itemizedlist>
-
- </sect4>
-
- <sect4>
- <title>General Performance</title>
-
- <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-groupingsets-hash-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 <xref linkend="autovacuum"/> 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 <xref
- linkend="sql-dropdatabase"/> 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 <xref linkend="storage-toast"/> 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 <xref
- linkend="sql-listen"/>/<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 <xref
- linkend="sql-notify"/> 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>
-
- </sect4>
-
- <sect4>
- <title>Monitoring</title>
-
- <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 <xref linkend="sql-explain"/>,
- <xref linkend="auto-explain"/>, <xref
- linkend="autovacuum"/>, 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, &Aacute;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 <xref linkend="sql-vacuum"/> buffer counters 64-bits
- wide to avoid overflow (&Aacute;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, &Aacute;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&iacute;zio
- de Royes Mello)
- </para>
-
- <para>
- This is useful for monitoring queries.
- </para>
- </listitem>
-
- </itemizedlist>
-
- </sect4>
-
- <sect4>
- <title>System Views</title>
-
- <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 <xref linkend="sql-analyze"/> progress (&Aacute;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>
-
- </sect4>
-
- <sect4>
- <title><link linkend="wait-event-table">Wait Events</link></title>
-
- <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>
-
- </itemizedlist>
-
- </sect4>
-
- <sect4>
- <title><acronym>Authentication</acronym></title>
-
- <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>
-
- </itemizedlist>
-
- </sect4>
-
- <sect4>
- <title>Server Configuration</title>
-
- <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>
-
- </itemizedlist>
-
- </sect4>
-
- </sect3>
-
- <sect3>
- <title>Streaming Replication and Recovery</title>
-
- <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>
-
- </itemizedlist>
-
- </sect3>
-
- <sect3>
- <title>Utility Commands</title>
-
- <itemizedlist>
-
- <listitem>
-<!--
-Author: Amit Kapila <akapila@postgresql.org>
-2020-01-20 [40d964ec9] Allow vacuum command to process indexes in parallel.
--->
-
- <para>
- Allow <xref linkend="sql-vacuum"/> 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-limit"><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 <xref linkend="sql-explain"/>'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 <xref linkend="sql-altertable"/> 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 <xref linkend="sql-alterview"/> 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 <xref linkend="sql-altertype"/> 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 <xref linkend="sql-createdatabase"/> <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 <xref linkend="sql-dropdatabase"/> 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>
-
- </sect3>
-
- <sect3>
- <title>Data Types</title>
-
- <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>
-
- </itemizedlist>
-
- </sect3>
-
- <sect3>
- <title>Functions</title>
-
- <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&amp;'\####', 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&eacute; Santamar&iacute;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 via external modules <xref linkend="uuid-ossp"/> and <xref
- linkend="pgcrypto"/>.
- </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 &lt;-&gt; line was supported,
- now line &lt;-&gt; 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
- (&Aacute;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>
-
- </sect3>
-
- <sect3>
- <title><xref linkend="plpgsql"/></title>
-
- <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>
-
- </itemizedlist>
-
- </sect3>
-
- <sect3>
- <title>Client Interfaces</title>
-
- <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>
-
- </itemizedlist>
-
- </sect3>
-
- <sect3>
- <title>Client Applications</title>
-
- <sect4>
- <title><xref linkend="app-psql"/></title>
-
- <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>
-
- </itemizedlist>
-
- </sect4>
-
- <sect4>
- <title><link linkend="pgbench"><application>pgbench</application></link></title>
-
- <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>
-
- </itemizedlist>
-
- </sect4>
-
- </sect3>
-
- <sect3>
- <title>Server Applications</title>
-
- <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 <application><xref
- linkend="app-pgverifybackup"/></application> 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 <application><xref
- linkend="app-pgbasebackup"/></application> 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_basebackup</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 <application><xref linkend="app-pgrewind"/></application>
- option to configure standbys (Paul Guo, Jimmy Yih, Ashwin Agrawal)
- </para>
-
- <para>
- This matches <application><xref
- linkend="app-pgbasebackup"/></application>'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 <xref linkend="sql-prepare-transaction"/> 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 <application><xref linkend="pgwaldump"/></application>
- 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 <application><xref linkend="app-pgdump"/></application>
- <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 <application><xref
- linkend="app-vacuumdb"/></application> 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 <application><xref linkend="app-reindexdb"/></application>
- 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 <application><xref linkend="app-dropdb"/></application>
- 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 <application><xref linkend="app-createuser"/></application> (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 <application><xref
- linkend="pgupgrade"/></application> binary
- as the default new 'bindir' location when running
- <application>pg_upgrade</application> (Daniel Gustafsson)
- </para>
- </listitem>
-
- </itemizedlist>
-
- </sect3>
-
- <sect3>
- <title>Documentation</title>
-
- <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&uuml;rgen Purtz, Roger Harkavy, &Aacute;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>
-
- </sect3>
-
- <sect3>
- <title>Source Code</title>
-
- <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 <xref linkend="sql-truncate"/> 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>
-
- </sect3>
-
- <sect3>
- <title>Additional Modules</title>
-
- <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 <xref linkend="sql-alterusermapping"/> 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 <link
- linkend="plperl"><application>bool_plperl</application></link>
- which transforms <acronym>SQL</acronym> booleans to/from PL/Perl
- booleans (Ivan Panchenko)
- </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>
-
- </sect3>
-
- </sect2>
-
- <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>
-
- <simplelist>
- <member></member>
- </simplelist>
- </sect2>
-
- </sect1>
diff --git a/doc/src/sgml/release-14.sgml b/doc/src/sgml/release-14.sgml
new file mode 100644
index 00000000000..9116a34b91f
--- /dev/null
+++ b/doc/src/sgml/release-14.sgml
@@ -0,0 +1,16 @@
+<!-- doc/src/sgml/release-14.sgml -->
+<!-- See header comment in release.sgml about typical markup -->
+
+ <sect1 id="release-14">
+ <title>Release 14</title>
+
+ <formalpara>
+ <title>Release date:</title>
+ <para>2021-??-??</para>
+ </formalpara>
+
+ <para>
+ This is just a placeholder for now.
+ </para>
+
+ </sect1>
diff --git a/doc/src/sgml/release.sgml b/doc/src/sgml/release.sgml
index 25e00556f8e..7451f2d4ce3 100644
--- a/doc/src/sgml/release.sgml
+++ b/doc/src/sgml/release.sgml
@@ -81,7 +81,7 @@ For new features, add links to the documentation sections.
All the active branches have to be edited concurrently when doing that.
-->
-&release-13;
+&release-14;
<sect1 id="release-prior">
<title>Prior Releases</title>
diff --git a/src/tools/git_changelog b/src/tools/git_changelog
index db1b1afdcc8..0911389b1e4 100755
--- a/src/tools/git_changelog
+++ b/src/tools/git_changelog
@@ -57,6 +57,7 @@ require IPC::Open2;
# (We could get this from "git branches", but not worth the trouble.)
# NB: master must be first!
my @BRANCHES = qw(master
+ REL_13_STABLE
REL_12_STABLE REL_11_STABLE REL_10_STABLE REL9_6_STABLE REL9_5_STABLE
REL9_4_STABLE REL9_3_STABLE REL9_2_STABLE REL9_1_STABLE REL9_0_STABLE
REL8_4_STABLE REL8_3_STABLE REL8_2_STABLE REL8_1_STABLE REL8_0_STABLE
diff --git a/src/tools/version_stamp.pl b/src/tools/version_stamp.pl
index 80a8efc6d52..35955876222 100755
--- a/src/tools/version_stamp.pl
+++ b/src/tools/version_stamp.pl
@@ -25,7 +25,7 @@ use warnings;
# Major version is hard-wired into the script. We update it when we branch
# a new development version.
-my $majorversion = 13;
+my $majorversion = 14;
# Validate argument and compute derived variables
my $minor = shift;