Doc: updates for v12 release notes.

Remove mention of ECPG's DECLARE STATEMENT, since that was reverted
yesterday.  Rewrite some other entries per suggestions from Peter
Eisentraut.  Make a couple of desultory wording and markup adjustments.

Discussion: https://postgr.es/m/d4dff575-90ab-9c8c-cc6f-8c657e2de665@2ndquadrant.com
This commit is contained in:
Tom Lane 2019-09-21 15:23:53 -04:00
parent 2966e30e55
commit 25f9368304
1 changed files with 119 additions and 134 deletions

View File

@ -6,7 +6,7 @@
<formalpara> <formalpara>
<title>Release date:</title> <title>Release date:</title>
<para>2019-??-??, CURRENT AS OF 2019-09-06</para> <para>2019-??-??, CURRENT AS OF 2019-09-21</para>
</formalpara> </formalpara>
<sect2> <sect2>
@ -136,8 +136,9 @@
<itemizedlist> <itemizedlist>
<listitem> <listitem>
<para> <para>
Client- and server-side encryption for authentication using Encryption of TCP/IP connections when using
<link linkend="gssapi-auth"><acronym>GSSAPI</acronym></link> <link linkend="gssapi-auth"><acronym>GSSAPI</acronym></link>
authentication
</para> </para>
</listitem> </listitem>
@ -261,8 +262,8 @@ Author: Peter Eisentraut <peter_e@gmx.net>
and the server will not start if that file exists. <link and the server will not start if that file exists. <link
linkend="runtime-config-wal-archive-recovery">recovery.signal</link> linkend="runtime-config-wal-archive-recovery">recovery.signal</link>
and <filename>standby.signal</filename> files are now used to switch and <filename>standby.signal</filename> files are now used to switch
into non-primary mode. <varname>trigger_file</varname> has been into non-primary mode. The <varname>trigger_file</varname> setting
renamed to <xref linkend="guc-promote-trigger-file"/>. The has been renamed to <xref linkend="guc-promote-trigger-file"/>. The
<varname>standby_mode</varname> setting has been removed. <varname>standby_mode</varname> setting has been removed.
</para> </para>
</listitem> </listitem>
@ -502,31 +503,6 @@ Author: Peter Geoghegan <pg@bowt.ie>
<listitem> <listitem>
<!-- <!--
Author: Tom Lane <tgl@sss.pgh.pa.us> Author: Tom Lane <tgl@sss.pgh.pa.us>
2018-12-19 [586b98fdf] Make type "name" collation-aware.
Author: Tom Lane <tgl@sss.pgh.pa.us>
2019-04-05 [478cacb50] Ensure consistent name matching behavior in processSQLNa
-->
<para>
Allow data type <link
linkend="datatype-character-special-table">name</link> to use
non-C collations (Tom Lane, Daniel Vérité)
</para>
<para>
Type <type>name</type> still uses the <quote>C</quote> collation by
default, rather than defaulting to the database collation.
Regular-expression operators on <type>name</type> columns will now
use the <quote>C</quote> collation by default. If you want non-C
behavior for locale-dependent regular expression patterns (such
as <literal>\w</literal>), attach an
explicit <literal>COLLATE</literal> clause.
</para>
</listitem>
<listitem>
<!--
Author: Tom Lane <tgl@sss.pgh.pa.us>
2019-03-21 [bfb456c1b] Improve error reporting for DROP FUNCTION/PROCEDURE/AGGR 2019-03-21 [bfb456c1b] Improve error reporting for DROP FUNCTION/PROCEDURE/AGGR
--> -->
@ -591,6 +567,77 @@ Author: Peter Eisentraut <peter_e@gmx.net>
<listitem> <listitem>
<!-- <!--
Author: Tom Lane <tgl@sss.pgh.pa.us>
2018-12-19 [586b98fdf] Make type "name" collation-aware.
Author: Tom Lane <tgl@sss.pgh.pa.us>
2019-04-05 [478cacb50] Ensure consistent name matching behavior in processSQLNa
-->
<para>
Mark table columns of type <link
linkend="datatype-character-special-table">name</link> as having
<quote>C</quote> collation by default (Tom Lane, Daniel Vérité)
</para>
<para>
The comparison operators for data type <type>name</type> can now use
any collation, rather than always using <quote>C</quote> collation.
To preserve the previous semantics of queries, columns of
type <type>name</type> are now explicitly marked as
having <quote>C</quote> collation. A side effect of this is that
regular-expression operators on <type>name</type> columns will now
use the <quote>C</quote> collation by default, not the database
collation, to determine the behavior of locale-dependent regular
expression patterns (such as <literal>\w</literal>). If you want
non-C behavior for a regular expression on a <type>name</type>
column, attach an explicit <literal>COLLATE</literal> clause. (For
user-defined <type>name</type> columns, another possibility is to
specify a different collation at table creation time; but that just
moves the non-backwards-compatibility to the comparison operators.)
</para>
</listitem>
<listitem>
<!--
Author: Tom Lane <tgl@sss.pgh.pa.us>
2018-12-20 [7c15cef86] Base information_schema.sql_identifier domain on name, n
2018-12-20 [5bbee34d9] Avoid producing over-length specific_name outputs in inf
2018-12-18 [6b0faf723] Make collation-aware system catalog columns use "C" coll
-->
<para>
Treat object-name columns in
the <link linkend="information-schema"><structname>information_schema</structname></link>
views as being of type <type>name</type> not <type>varchar</type>
(Tom Lane)
</para>
<para>
Per the SQL standard, object-name columns in
the <structname>information_schema</structname> views are declared
as being of domain type <type>sql_identifier</type>.
In <productname>PostgreSQL</productname>, the underlying catalog
columns are really of type <type>name</type>. This change
makes <type>sql_identifier</type> be a domain
over <type>name</type>, rather than <type>varchar</type> as before.
This eliminates a semantic mismatch in comparison and sorting
behavior, which can greatly improve the performance of queries
on <structname>information_schema</structname> views that restrict
an object-name column. Note however that inequality restrictions,
for example
<programlisting>
SELECT ... FROM information_schema.tables WHERE table_name &lt; 'foo';
</programlisting>
will now use <quote>C</quote>-locale comparison semantics by
default, rather than the database's default collation as before.
Sorting on these columns will also follow <quote>C</quote> ordering
rules. The previous behavior (and inefficiency) can be enforced by
adding a <literal>COLLATE "default"</literal> clause.
</para>
</listitem>
<listitem>
<!--
Author: Peter Eisentraut <peter_e@gmx.net> Author: Peter Eisentraut <peter_e@gmx.net>
2018-07-10 [bcbd94080] Remove dynamic_shared_memory_type=none 2018-07-10 [bcbd94080] Remove dynamic_shared_memory_type=none
--> -->
@ -1453,7 +1500,7 @@ Author: Magnus Hagander <magnus@hagander.net>
</para> </para>
<para> <para>
Global objects have a <link Global objects are shown with a <link
linkend="pg-stat-database-view"><structname>pg_stat_database</structname></link>.<structfield>datid</structfield> linkend="pg-stat-database-view"><structname>pg_stat_database</structname></link>.<structfield>datid</structfield>
value of zero. value of zero.
</para> </para>
@ -1605,58 +1652,6 @@ Author: Michael Paquier <michael@paquier.xyz>
</itemizedlist> </itemizedlist>
<sect5>
<title><link linkend="information-schema">Information Schema</link></title>
<itemizedlist>
<listitem>
<!--
Author: Tom Lane <tgl@sss.pgh.pa.us>
2018-12-20 [7c15cef86] Base information_schema.sql_identifier domain on name, n
-->
<para>
Allow more use of indexes for text comparisons with
<structname>information_schema</structname> columns (Tom Lane)
</para>
</listitem>
<listitem>
<!--
Author: Tom Lane <tgl@sss.pgh.pa.us>
2018-12-18 [6b0faf723] Make collation-aware system catalog columns use "C" coll
-->
<para>
Use <quote>C</quote> collation for <type>name</type>-type columns in
<structname>information_schema</structname> views and the system
catalogs (Tom Lane)
</para>
<para>
This will produce more consistent behavior in databases with
different collations, but will also cause sorts on these columns
to produce results in <quote>C</quote> ordering, rather
than the database's default collation.
</para>
</listitem>
<listitem>
<!--
Author: Tom Lane <tgl@sss.pgh.pa.us>
2018-12-20 [5bbee34d9] Avoid producing over-length specific_name outputs in inf
-->
<para>
Ensure that <structname>information_schema</structname> outputs honor
the system-defined maximum identifier length (Tom Lane)
</para>
</listitem>
</itemizedlist>
</sect5>
</sect4> </sect4>
<sect4> <sect4>
@ -1672,18 +1667,22 @@ Author: Stephen Frost <sfrost@snowman.net>
<para> <para>
Add <link linkend="gssapi-auth"><acronym>GSSAPI</acronym></link> Add <link linkend="gssapi-auth"><acronym>GSSAPI</acronym></link>
client- and server-side encryption support (Robbie Harwood, encryption support (Robbie Harwood, Stephen Frost)
Stephen Frost)
</para> </para>
<para> <para>
Add <literal>hostgssenc</literal> This feature allows TCP/IP connections to be encrypted when using
GSSAPI authentication, without having to set up a separate
encryption facility such as SSL.
In support of this, add <literal>hostgssenc</literal>
and <literal>hostnogssenc</literal> record types in <link and <literal>hostnogssenc</literal> record types in <link
linkend="auth-pg-hba-conf"><filename>pg_hba.conf</filename></link>. linkend="auth-pg-hba-conf"><filename>pg_hba.conf</filename></link>
Such entries would typically use the <literal>gss</literal> for selecting connections that do or do not use GSSAPI encryption,
authentication method. This change also adds a libpq corresponding to the existing <literal>hostssl</literal>
<xref linkend="libpq-connect-gssencmode"/> option, and a and <literal>hostnossl</literal> record types.
<xref linkend="pg-stat-gssapi-view"/> system view. There is also a new <xref linkend="libpq-connect-gssencmode"/>
libpq option, and a <xref linkend="pg-stat-gssapi-view"/> system
view.
</para> </para>
</listitem> </listitem>
@ -2080,9 +2079,9 @@ Author: Tomas Vondra <tomas.vondra@postgresql.org>
--> -->
<para> <para>
Add a <literal>WHERE</literal> clause to <command>COPY Add a <literal>WHERE</literal> clause
FROM</command> to control which rows are accepted (Surafel to <link linkend="sql-copy"><command>COPY FROM</command></link> to
Temesgen) control which rows are accepted (Surafel Temesgen)
</para> </para>
<para> <para>
@ -2097,16 +2096,17 @@ Author: Thomas Munro <tmunro@postgresql.org>
--> -->
<para> <para>
Allow enumerated values to be added in more transaction types Allow enumerated values to be added more flexibly
(Andrew Dunstan, Tom Lane, Thomas Munro) (Andrew Dunstan, Tom Lane, Thomas Munro)
</para> </para>
<para> <para>
Previously, <link linkend="sql-altertype"><command>ALTER Previously, <link linkend="sql-altertype"><command>ALTER TYPE
TYPE ... ADD VALUE</command></link> could only be called in ... ADD VALUE</command></link> could not be called in a transaction
a transaction that created the enumerated type. Now, the only block, unless it was part of the same transaction that created the
restriction is that the new enumerated value cannot be referenced enumerated type. Now it can be called in a later transaction, so
until the transaction commits. long as the new enumerated value is not referenced until after it is
committed.
</para> </para>
</listitem> </listitem>
@ -2123,7 +2123,9 @@ Author: Peter Eisentraut <peter@eisentraut.org>
<para> <para>
The commands are <link linkend="sql-commit"><command>COMMIT AND The commands are <link linkend="sql-commit"><command>COMMIT AND
CHAIN</command></link> and <command>ROLLBACK AND CHAIN</command>. CHAIN</command></link>
and <link linkend="sql-rollback"><command>ROLLBACK AND
CHAIN</command></link>.
</para> </para>
</listitem> </listitem>
@ -2144,8 +2146,8 @@ Author: Fujii Masao <fujii@postgresql.org>
<para> <para>
These options are <varname>vacuum_truncate</varname> and These options are <varname>vacuum_truncate</varname> and
<varname>toast.vacuum_truncate</varname>. Use of these options <varname>toast.vacuum_truncate</varname>. Use of these options
reduces vacuum's locking requirements, but prevents returning disk reduces <command>VACUUM</command>'s locking requirements, but
space to the operating system. prevents returning disk space to the operating system.
</para> </para>
</listitem> </listitem>
@ -2180,7 +2182,7 @@ Author: Michael Paquier <michael@paquier.xyz>
<para> <para>
Add the ability to skip <command>VACUUM</command> and Add the ability to skip <command>VACUUM</command> and
<command>ANALYZE</command> operations on tables that cannot be <command>ANALYZE</command> operations on tables that cannot be
immediately locked (Nathan Bossart) locked immediately (Nathan Bossart)
</para> </para>
<para> <para>
@ -2233,8 +2235,8 @@ Author: Tomas Vondra <tomas.vondra@postgresql.org>
</para> </para>
<para> <para>
This output can also be obtained in auto-explain via <xref This output can also be obtained in <xref linkend="auto-explain"/>
linkend="auto-explain"/>.<literal>log_settings</literal>. by setting <varname>auto_explain.log_settings</varname>.
</para> </para>
</listitem> </listitem>
@ -2263,8 +2265,8 @@ Author: Peter Eisentraut <peter@eisentraut.org>
</para> </para>
<para> <para>
This allows modifications of <literal>reloptions</literal> and Modifications of catalogs' <literal>reloptions</literal> and
autovacuum settings. autovacuum settings are now supported.
</para> </para>
</listitem> </listitem>
@ -2280,8 +2282,8 @@ Author: Peter Eisentraut <peter@eisentraut.org>
</para> </para>
<para> <para>
Previously, only the first column name was used, resulting in Previously, only the first column name was included in the constraint
ambiguity for multi-column foreign keys. name, resulting in ambiguity for multi-column foreign keys.
</para> </para>
</listitem> </listitem>
@ -2340,7 +2342,7 @@ Author: Peter Eisentraut <peter@eisentraut.org>
<para> <para>
Allow creation of <link Allow creation of <link
linkend="collation">collations</link> that report linkend="collation">collations</link> that report
string equality for strings that are not byte-wise equal (Peter string equality for strings that are not bit-wise equal (Peter
Eisentraut) Eisentraut)
</para> </para>
@ -2685,24 +2687,6 @@ Author: Michael Meskes <meskes@postgresql.org>
<listitem> <listitem>
<!-- <!--
Author: Michael Meskes <meskes@postgresql.org> Author: Michael Meskes <meskes@postgresql.org>
2019-02-16 [bd7c95f0c] Add DECLARE STATEMENT support to ECPG.
-->
<para>
Add <command>DECLARE STATEMENT</command> support to
<productname>ECPG</productname> (Takeshi Ideriha, Hayato Kuroda)
</para>
<para>
This allows statements to be associated with named connections,
so future operations like cursors don't need to re-reference the
connection name.
</para>
</listitem>
<listitem>
<!--
Author: Michael Meskes <meskes@postgresql.org>
2019-05-22 [a1dc6ab46] Implement PREPARE AS statement for ECPG. 2019-05-22 [a1dc6ab46] Implement PREPARE AS statement for ECPG.
--> -->
@ -2810,7 +2794,7 @@ Author: Peter Eisentraut <peter@eisentraut.org>
<para> <para>
Show the manual page <acronym>URL</acronym> in Show the manual page <acronym>URL</acronym> in
<application>psql</application>'s <command>\help</command> output <application>psql</application>'s <command>\help</command> output
(Peter Eisentraut) for a SQL command (Peter Eisentraut)
</para> </para>
</listitem> </listitem>
@ -2945,13 +2929,14 @@ Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
--> -->
<para> <para>
Properly detach the server on <application>pg_ctl</application> Properly detach the new server process
start (Paul Guo) during <literal><application>pg_ctl</application> start</literal>
(Paul Guo)
</para> </para>
<para> <para>
This prevents later shell activity from interfering with the This prevents the server from being shut down if the shell script
postmaster. that invoked <application>pg_ctl</application> is interrupted later.
</para> </para>
</listitem> </listitem>
@ -3394,7 +3379,7 @@ Author: Jeff Davis <jdavis@postgresql.org>
While <literal>CHECK OPTION</literal>s on While <literal>CHECK OPTION</literal>s on
<application>postgres_fdw</application> tables are ignored (because <application>postgres_fdw</application> tables are ignored (because
the reference is foreign), views on such tables are considered the reference is foreign), views on such tables are considered
local, so this release enforces <literal>CHECK OPTION</literal>s local, so this change enforces <literal>CHECK OPTION</literal>s
on them. Previously, only <command>INSERT</command>s and on them. Previously, only <command>INSERT</command>s and
<command>UPDATE</command>s with <literal>RETURNING</literal> <command>UPDATE</command>s with <literal>RETURNING</literal>
clauses that returned <literal>CHECK OPTION</literal> values clauses that returned <literal>CHECK OPTION</literal> values