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>
<title>Release date:</title>
<para>2019-??-??, CURRENT AS OF 2019-09-06</para>
<para>2019-??-??, CURRENT AS OF 2019-09-21</para>
</formalpara>
<sect2>
@ -136,8 +136,9 @@
<itemizedlist>
<listitem>
<para>
Client- and server-side encryption for authentication using
Encryption of TCP/IP connections when using
<link linkend="gssapi-auth"><acronym>GSSAPI</acronym></link>
authentication
</para>
</listitem>
@ -261,8 +262,8 @@ Author: Peter Eisentraut <peter_e@gmx.net>
and the server will not start if that file exists. <link
linkend="runtime-config-wal-archive-recovery">recovery.signal</link>
and <filename>standby.signal</filename> files are now used to switch
into non-primary mode. <varname>trigger_file</varname> has been
renamed to <xref linkend="guc-promote-trigger-file"/>. The
into non-primary mode. The <varname>trigger_file</varname> setting
has been renamed to <xref linkend="guc-promote-trigger-file"/>. The
<varname>standby_mode</varname> setting has been removed.
</para>
</listitem>
@ -502,31 +503,6 @@ Author: Peter Geoghegan <pg@bowt.ie>
<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>
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
-->
@ -591,6 +567,77 @@ Author: Peter Eisentraut <peter_e@gmx.net>
<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>
2018-07-10 [bcbd94080] Remove dynamic_shared_memory_type=none
-->
@ -1453,7 +1500,7 @@ Author: Magnus Hagander <magnus@hagander.net>
</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>
value of zero.
</para>
@ -1605,58 +1652,6 @@ Author: Michael Paquier <michael@paquier.xyz>
</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>
@ -1672,18 +1667,22 @@ Author: Stephen Frost <sfrost@snowman.net>
<para>
Add <link linkend="gssapi-auth"><acronym>GSSAPI</acronym></link>
client- and server-side encryption support (Robbie Harwood,
Stephen Frost)
encryption support (Robbie Harwood, Stephen Frost)
</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
linkend="auth-pg-hba-conf"><filename>pg_hba.conf</filename></link>.
Such entries would typically use the <literal>gss</literal>
authentication method. This change also adds a libpq
<xref linkend="libpq-connect-gssencmode"/> option, and a
<xref linkend="pg-stat-gssapi-view"/> system view.
linkend="auth-pg-hba-conf"><filename>pg_hba.conf</filename></link>
for selecting connections that do or do not use GSSAPI encryption,
corresponding to the existing <literal>hostssl</literal>
and <literal>hostnossl</literal> record types.
There is also a new <xref linkend="libpq-connect-gssencmode"/>
libpq option, and a <xref linkend="pg-stat-gssapi-view"/> system
view.
</para>
</listitem>
@ -2080,9 +2079,9 @@ Author: Tomas Vondra <tomas.vondra@postgresql.org>
-->
<para>
Add a <literal>WHERE</literal> clause to <command>COPY
FROM</command> to control which rows are accepted (Surafel
Temesgen)
Add a <literal>WHERE</literal> clause
to <link linkend="sql-copy"><command>COPY FROM</command></link> to
control which rows are accepted (Surafel Temesgen)
</para>
<para>
@ -2097,16 +2096,17 @@ Author: Thomas Munro <tmunro@postgresql.org>
-->
<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)
</para>
<para>
Previously, <link linkend="sql-altertype"><command>ALTER
TYPE ... ADD VALUE</command></link> could only be called in
a transaction that created the enumerated type. Now, the only
restriction is that the new enumerated value cannot be referenced
until the transaction commits.
Previously, <link linkend="sql-altertype"><command>ALTER TYPE
... ADD VALUE</command></link> could not be called in a transaction
block, unless it was part of the same transaction that created the
enumerated type. Now it can be called in a later transaction, so
long as the new enumerated value is not referenced until after it is
committed.
</para>
</listitem>
@ -2123,7 +2123,9 @@ Author: Peter Eisentraut <peter@eisentraut.org>
<para>
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>
</listitem>
@ -2144,8 +2146,8 @@ Author: Fujii Masao <fujii@postgresql.org>
<para>
These options are <varname>vacuum_truncate</varname> and
<varname>toast.vacuum_truncate</varname>. Use of these options
reduces vacuum's locking requirements, but prevents returning disk
space to the operating system.
reduces <command>VACUUM</command>'s locking requirements, but
prevents returning disk space to the operating system.
</para>
</listitem>
@ -2180,7 +2182,7 @@ Author: Michael Paquier <michael@paquier.xyz>
<para>
Add the ability to skip <command>VACUUM</command> and
<command>ANALYZE</command> operations on tables that cannot be
immediately locked (Nathan Bossart)
locked immediately (Nathan Bossart)
</para>
<para>
@ -2233,8 +2235,8 @@ Author: Tomas Vondra <tomas.vondra@postgresql.org>
</para>
<para>
This output can also be obtained in auto-explain via <xref
linkend="auto-explain"/>.<literal>log_settings</literal>.
This output can also be obtained in <xref linkend="auto-explain"/>
by setting <varname>auto_explain.log_settings</varname>.
</para>
</listitem>
@ -2263,8 +2265,8 @@ Author: Peter Eisentraut <peter@eisentraut.org>
</para>
<para>
This allows modifications of <literal>reloptions</literal> and
autovacuum settings.
Modifications of catalogs' <literal>reloptions</literal> and
autovacuum settings are now supported.
</para>
</listitem>
@ -2280,8 +2282,8 @@ Author: Peter Eisentraut <peter@eisentraut.org>
</para>
<para>
Previously, only the first column name was used, resulting in
ambiguity for multi-column foreign keys.
Previously, only the first column name was included in the constraint
name, resulting in ambiguity for multi-column foreign keys.
</para>
</listitem>
@ -2340,7 +2342,7 @@ Author: Peter Eisentraut <peter@eisentraut.org>
<para>
Allow creation of <link
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)
</para>
@ -2685,24 +2687,6 @@ Author: Michael Meskes <meskes@postgresql.org>
<listitem>
<!--
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.
-->
@ -2810,7 +2794,7 @@ Author: Peter Eisentraut <peter@eisentraut.org>
<para>
Show the manual page <acronym>URL</acronym> in
<application>psql</application>'s <command>\help</command> output
(Peter Eisentraut)
for a SQL command (Peter Eisentraut)
</para>
</listitem>
@ -2945,13 +2929,14 @@ Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
-->
<para>
Properly detach the server on <application>pg_ctl</application>
start (Paul Guo)
Properly detach the new server process
during <literal><application>pg_ctl</application> start</literal>
(Paul Guo)
</para>
<para>
This prevents later shell activity from interfering with the
postmaster.
This prevents the server from being shut down if the shell script
that invoked <application>pg_ctl</application> is interrupted later.
</para>
</listitem>
@ -3394,7 +3379,7 @@ Author: Jeff Davis <jdavis@postgresql.org>
While <literal>CHECK OPTION</literal>s on
<application>postgres_fdw</application> tables are ignored (because
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
<command>UPDATE</command>s with <literal>RETURNING</literal>
clauses that returned <literal>CHECK OPTION</literal> values