Release notes for 9.6.3, 9.5.7, 9.4.12, 9.3.17, 9.2.21.
This commit is contained in:
parent
86713deecd
commit
27dae036a5
@ -1,6 +1,331 @@
|
|||||||
<!-- doc/src/sgml/release-9.2.sgml -->
|
<!-- doc/src/sgml/release-9.2.sgml -->
|
||||||
<!-- See header comment in release.sgml about typical markup -->
|
<!-- See header comment in release.sgml about typical markup -->
|
||||||
|
|
||||||
|
<sect1 id="release-9-2-21">
|
||||||
|
<title>Release 9.2.21</title>
|
||||||
|
|
||||||
|
<note>
|
||||||
|
<title>Release Date</title>
|
||||||
|
<simpara>2017-05-11</simpara>
|
||||||
|
</note>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This release contains a variety of fixes from 9.2.20.
|
||||||
|
For information about new features in the 9.2 major release, see
|
||||||
|
<xref linkend="release-9-2">.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The <productname>PostgreSQL</> community will stop releasing updates
|
||||||
|
for the 9.2.X release series in September 2017.
|
||||||
|
Users are encouraged to update to a newer release branch soon.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<sect2>
|
||||||
|
<title>Migration to Version 9.2.21</title>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
A dump/restore is not required for those running 9.2.X.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
However, if you are upgrading from a version earlier than 9.2.20,
|
||||||
|
see <xref linkend="release-9-2-20">.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
|
||||||
|
<sect2>
|
||||||
|
<title>Changes</title>
|
||||||
|
|
||||||
|
<itemizedlist>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix possible corruption of <quote>init forks</> of unlogged indexes
|
||||||
|
(Robert Haas, Michael Paquier)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This could result in an unlogged index being set to an invalid state
|
||||||
|
after a crash and restart. Such a problem would persist until the
|
||||||
|
index was dropped and rebuilt.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix incorrect reconstruction of <structname>pg_subtrans</> entries
|
||||||
|
when a standby server replays a prepared but uncommitted two-phase
|
||||||
|
transaction (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
In most cases this turned out to have no visible ill effects, but in
|
||||||
|
corner cases it could result in circular references
|
||||||
|
in <structname>pg_subtrans</>, potentially causing infinite loops
|
||||||
|
in queries that examine rows modified by the two-phase transaction.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Ensure parsing of queries in extension scripts sees the results of
|
||||||
|
immediately-preceding DDL (Julien Rouhaud, Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Due to lack of a cache flush step between commands in an extension
|
||||||
|
script file, non-utility queries might not see the effects of an
|
||||||
|
immediately preceding catalog change, such as <command>ALTER TABLE
|
||||||
|
... RENAME</>.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Skip tablespace privilege checks when <command>ALTER TABLE ... ALTER
|
||||||
|
COLUMN TYPE</> rebuilds an existing index (Noah Misch)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The command failed if the calling user did not currently have
|
||||||
|
<literal>CREATE</> privilege for the tablespace containing the index.
|
||||||
|
That behavior seems unhelpful, so skip the check, allowing the
|
||||||
|
index to be rebuilt where it is.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <command>ALTER TABLE ... VALIDATE CONSTRAINT</> to not recurse
|
||||||
|
to child tables when the constraint is marked <literal>NO INHERIT</>
|
||||||
|
(Amit Langote)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This fix prevents unwanted <quote>constraint does not exist</> failures
|
||||||
|
when no matching constraint is present in the child tables.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <command>VACUUM</> to account properly for pages that could not
|
||||||
|
be scanned due to conflicting page pins (Andrew Gierth)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This tended to lead to underestimation of the number of tuples in
|
||||||
|
the table. In the worst case of a small heavily-contended
|
||||||
|
table, <command>VACUUM</> could incorrectly report that the table
|
||||||
|
contained no tuples, leading to very bad planning choices.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Ensure that bulk-tuple-transfer loops within a hash join are
|
||||||
|
interruptible by query cancel requests (Tom Lane, Thomas Munro)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <function>cursor_to_xml()</> to produce valid output
|
||||||
|
with <replaceable>tableforest</> = false
|
||||||
|
(Thomas Munro, Peter Eisentraut)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Previously it failed to produce a wrapping <literal><table></>
|
||||||
|
element.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Improve performance of <structname>pg_timezone_names</> view
|
||||||
|
(Tom Lane, David Rowley)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix sloppy handling of corner-case errors from <function>lseek()</>
|
||||||
|
and <function>close()</> (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Neither of these system calls are likely to fail in typical situations,
|
||||||
|
but if they did, <filename>fd.c</> could get quite confused.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix incorrect check for whether postmaster is running as a Windows
|
||||||
|
service (Michael Paquier)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This could result in attempting to write to the event log when that
|
||||||
|
isn't accessible, so that no logging happens at all.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <application>ecpg</> to support <command>COMMIT PREPARED</>
|
||||||
|
and <command>ROLLBACK PREPARED</> (Masahiko Sawada)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix a double-free error when processing dollar-quoted string literals
|
||||||
|
in <application>ecpg</> (Michael Meskes)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
In <application>pg_dump</>, fix incorrect schema and owner marking for
|
||||||
|
comments and security labels of some types of database objects
|
||||||
|
(Giuseppe Broccolo, Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
In simple cases this caused no ill effects; but for example, a
|
||||||
|
schema-selective restore might omit comments it should include, because
|
||||||
|
they were not marked as belonging to the schema of their associated
|
||||||
|
object.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Avoid emitting an invalid list file in <literal>pg_restore -l</>
|
||||||
|
when SQL object names contain newlines (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Replace newlines by spaces, which is sufficient to make the output
|
||||||
|
valid for <literal>pg_restore -L</>'s purposes.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <application>pg_upgrade</> to transfer comments and security labels
|
||||||
|
attached to <quote>large objects</> (blobs) (Stephen Frost)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Previously, blobs were correctly transferred to the new database, but
|
||||||
|
any comments or security labels attached to them were lost.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Improve error handling
|
||||||
|
in <filename>contrib/adminpack</>'s <function>pg_file_write()</>
|
||||||
|
function (Noah Misch)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Notably, it failed to detect errors reported
|
||||||
|
by <function>fclose()</>.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
In <filename>contrib/dblink</>, avoid leaking the previous unnamed
|
||||||
|
connection when establishing a new unnamed connection (Joe Conway)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Support OpenSSL 1.1.0 (Heikki Linnakangas, Andreas Karlsson, Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This is a back-patch of work previously done in newer branches;
|
||||||
|
it's needed since many platforms are adopting newer OpenSSL versions.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Support Tcl 8.6 in MSVC builds (Álvaro Herrera)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Sync our copy of the timezone library with IANA release tzcode2017b
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This fixes a bug affecting some DST transitions in January 2038.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Update time zone data files to <application>tzdata</> release 2017b
|
||||||
|
for DST law changes in Chile, Haiti, and Mongolia, plus historical
|
||||||
|
corrections for Ecuador, Kazakhstan, Liberia, and Spain.
|
||||||
|
Switch to numeric abbreviations for numerous time zones in South
|
||||||
|
America, the Pacific and Indian oceans, and some Asian and Middle
|
||||||
|
Eastern countries.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The IANA time zone database previously provided textual abbreviations
|
||||||
|
for all time zones, sometimes making up abbreviations that have little
|
||||||
|
or no currency among the local population. They are in process of
|
||||||
|
reversing that policy in favor of using numeric UTC offsets in zones
|
||||||
|
where there is no evidence of real-world use of an English
|
||||||
|
abbreviation. At least for the time being, <productname>PostgreSQL</>
|
||||||
|
will continue to accept such removed abbreviations for timestamp input.
|
||||||
|
But they will not be shown in the <structname>pg_timezone_names</>
|
||||||
|
view nor used for output.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Use correct daylight-savings rules for POSIX-style time zone names
|
||||||
|
in MSVC builds (David Rowley)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The Microsoft MSVC build scripts neglected to install
|
||||||
|
the <filename>posixrules</> file in the timezone directory tree.
|
||||||
|
This resulted in the timezone code falling back to its built-in
|
||||||
|
rule about what DST behavior to assume for a POSIX-style time zone
|
||||||
|
name. For historical reasons that still corresponds to the DST rules
|
||||||
|
the USA was using before 2007 (i.e., change on first Sunday in April
|
||||||
|
and last Sunday in October). With this fix, a POSIX-style zone name
|
||||||
|
will use the current and historical DST transition dates of
|
||||||
|
the <literal>US/Eastern</> zone. If you don't want that, remove
|
||||||
|
the <filename>posixrules</> file, or replace it with a copy of some
|
||||||
|
other zone file (see <xref linkend="datatype-timezones">). Note that
|
||||||
|
due to caching, you may need to restart the server to get such changes
|
||||||
|
to take effect.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
</itemizedlist>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
</sect1>
|
||||||
|
|
||||||
<sect1 id="release-9-2-20">
|
<sect1 id="release-9-2-20">
|
||||||
<title>Release 9.2.20</title>
|
<title>Release 9.2.20</title>
|
||||||
|
|
||||||
|
@ -1,6 +1,352 @@
|
|||||||
<!-- doc/src/sgml/release-9.3.sgml -->
|
<!-- doc/src/sgml/release-9.3.sgml -->
|
||||||
<!-- See header comment in release.sgml about typical markup -->
|
<!-- See header comment in release.sgml about typical markup -->
|
||||||
|
|
||||||
|
<sect1 id="release-9-3-17">
|
||||||
|
<title>Release 9.3.17</title>
|
||||||
|
|
||||||
|
<note>
|
||||||
|
<title>Release Date</title>
|
||||||
|
<simpara>2017-05-11</simpara>
|
||||||
|
</note>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This release contains a variety of fixes from 9.3.16.
|
||||||
|
For information about new features in the 9.3 major release, see
|
||||||
|
<xref linkend="release-9-3">.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<sect2>
|
||||||
|
<title>Migration to Version 9.3.17</title>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
A dump/restore is not required for those running 9.3.X.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
However, if you are upgrading from a version earlier than 9.3.16,
|
||||||
|
see <xref linkend="release-9-3-16">.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
|
||||||
|
<sect2>
|
||||||
|
<title>Changes</title>
|
||||||
|
|
||||||
|
<itemizedlist>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix possible corruption of <quote>init forks</> of unlogged indexes
|
||||||
|
(Robert Haas, Michael Paquier)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This could result in an unlogged index being set to an invalid state
|
||||||
|
after a crash and restart. Such a problem would persist until the
|
||||||
|
index was dropped and rebuilt.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix incorrect reconstruction of <structname>pg_subtrans</> entries
|
||||||
|
when a standby server replays a prepared but uncommitted two-phase
|
||||||
|
transaction (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
In most cases this turned out to have no visible ill effects, but in
|
||||||
|
corner cases it could result in circular references
|
||||||
|
in <structname>pg_subtrans</>, potentially causing infinite loops
|
||||||
|
in queries that examine rows modified by the two-phase transaction.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Ensure parsing of queries in extension scripts sees the results of
|
||||||
|
immediately-preceding DDL (Julien Rouhaud, Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Due to lack of a cache flush step between commands in an extension
|
||||||
|
script file, non-utility queries might not see the effects of an
|
||||||
|
immediately preceding catalog change, such as <command>ALTER TABLE
|
||||||
|
... RENAME</>.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Skip tablespace privilege checks when <command>ALTER TABLE ... ALTER
|
||||||
|
COLUMN TYPE</> rebuilds an existing index (Noah Misch)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The command failed if the calling user did not currently have
|
||||||
|
<literal>CREATE</> privilege for the tablespace containing the index.
|
||||||
|
That behavior seems unhelpful, so skip the check, allowing the
|
||||||
|
index to be rebuilt where it is.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <command>ALTER TABLE ... VALIDATE CONSTRAINT</> to not recurse
|
||||||
|
to child tables when the constraint is marked <literal>NO INHERIT</>
|
||||||
|
(Amit Langote)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This fix prevents unwanted <quote>constraint does not exist</> failures
|
||||||
|
when no matching constraint is present in the child tables.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <command>VACUUM</> to account properly for pages that could not
|
||||||
|
be scanned due to conflicting page pins (Andrew Gierth)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This tended to lead to underestimation of the number of tuples in
|
||||||
|
the table. In the worst case of a small heavily-contended
|
||||||
|
table, <command>VACUUM</> could incorrectly report that the table
|
||||||
|
contained no tuples, leading to very bad planning choices.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Ensure that bulk-tuple-transfer loops within a hash join are
|
||||||
|
interruptible by query cancel requests (Tom Lane, Thomas Munro)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <function>cursor_to_xml()</> to produce valid output
|
||||||
|
with <replaceable>tableforest</> = false
|
||||||
|
(Thomas Munro, Peter Eisentraut)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Previously it failed to produce a wrapping <literal><table></>
|
||||||
|
element.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Improve performance of <structname>pg_timezone_names</> view
|
||||||
|
(Tom Lane, David Rowley)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix sloppy handling of corner-case errors from <function>lseek()</>
|
||||||
|
and <function>close()</> (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Neither of these system calls are likely to fail in typical situations,
|
||||||
|
but if they did, <filename>fd.c</> could get quite confused.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix incorrect check for whether postmaster is running as a Windows
|
||||||
|
service (Michael Paquier)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This could result in attempting to write to the event log when that
|
||||||
|
isn't accessible, so that no logging happens at all.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <application>ecpg</> to support <command>COMMIT PREPARED</>
|
||||||
|
and <command>ROLLBACK PREPARED</> (Masahiko Sawada)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix a double-free error when processing dollar-quoted string literals
|
||||||
|
in <application>ecpg</> (Michael Meskes)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
In <application>pg_dump</>, fix incorrect schema and owner marking for
|
||||||
|
comments and security labels of some types of database objects
|
||||||
|
(Giuseppe Broccolo, Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
In simple cases this caused no ill effects; but for example, a
|
||||||
|
schema-selective restore might omit comments it should include, because
|
||||||
|
they were not marked as belonging to the schema of their associated
|
||||||
|
object.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Avoid emitting an invalid list file in <literal>pg_restore -l</>
|
||||||
|
when SQL object names contain newlines (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Replace newlines by spaces, which is sufficient to make the output
|
||||||
|
valid for <literal>pg_restore -L</>'s purposes.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <application>pg_upgrade</> to transfer comments and security labels
|
||||||
|
attached to <quote>large objects</> (blobs) (Stephen Frost)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Previously, blobs were correctly transferred to the new database, but
|
||||||
|
any comments or security labels attached to them were lost.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Improve error handling
|
||||||
|
in <filename>contrib/adminpack</>'s <function>pg_file_write()</>
|
||||||
|
function (Noah Misch)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Notably, it failed to detect errors reported
|
||||||
|
by <function>fclose()</>.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
In <filename>contrib/dblink</>, avoid leaking the previous unnamed
|
||||||
|
connection when establishing a new unnamed connection (Joe Conway)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <filename>contrib/pg_trgm</>'s extraction of trigrams from regular
|
||||||
|
expressions (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
In some cases it would produce a broken data structure that could never
|
||||||
|
match anything, leading to GIN or GiST indexscans that use a trigram
|
||||||
|
index not finding any matches to the regular expression.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
In <filename>contrib/postgres_fdw</>,
|
||||||
|
transmit query cancellation requests to the remote server
|
||||||
|
(Michael Paquier, Etsuro Fujita)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Previously, a local query cancellation request did not cause an
|
||||||
|
already-sent remote query to terminate early. This is a back-patch
|
||||||
|
of work originally done for 9.6.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Support OpenSSL 1.1.0 (Heikki Linnakangas, Andreas Karlsson, Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This is a back-patch of work previously done in newer branches;
|
||||||
|
it's needed since many platforms are adopting newer OpenSSL versions.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Support Tcl 8.6 in MSVC builds (Álvaro Herrera)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Sync our copy of the timezone library with IANA release tzcode2017b
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This fixes a bug affecting some DST transitions in January 2038.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Update time zone data files to <application>tzdata</> release 2017b
|
||||||
|
for DST law changes in Chile, Haiti, and Mongolia, plus historical
|
||||||
|
corrections for Ecuador, Kazakhstan, Liberia, and Spain.
|
||||||
|
Switch to numeric abbreviations for numerous time zones in South
|
||||||
|
America, the Pacific and Indian oceans, and some Asian and Middle
|
||||||
|
Eastern countries.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The IANA time zone database previously provided textual abbreviations
|
||||||
|
for all time zones, sometimes making up abbreviations that have little
|
||||||
|
or no currency among the local population. They are in process of
|
||||||
|
reversing that policy in favor of using numeric UTC offsets in zones
|
||||||
|
where there is no evidence of real-world use of an English
|
||||||
|
abbreviation. At least for the time being, <productname>PostgreSQL</>
|
||||||
|
will continue to accept such removed abbreviations for timestamp input.
|
||||||
|
But they will not be shown in the <structname>pg_timezone_names</>
|
||||||
|
view nor used for output.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Use correct daylight-savings rules for POSIX-style time zone names
|
||||||
|
in MSVC builds (David Rowley)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The Microsoft MSVC build scripts neglected to install
|
||||||
|
the <filename>posixrules</> file in the timezone directory tree.
|
||||||
|
This resulted in the timezone code falling back to its built-in
|
||||||
|
rule about what DST behavior to assume for a POSIX-style time zone
|
||||||
|
name. For historical reasons that still corresponds to the DST rules
|
||||||
|
the USA was using before 2007 (i.e., change on first Sunday in April
|
||||||
|
and last Sunday in October). With this fix, a POSIX-style zone name
|
||||||
|
will use the current and historical DST transition dates of
|
||||||
|
the <literal>US/Eastern</> zone. If you don't want that, remove
|
||||||
|
the <filename>posixrules</> file, or replace it with a copy of some
|
||||||
|
other zone file (see <xref linkend="datatype-timezones">). Note that
|
||||||
|
due to caching, you may need to restart the server to get such changes
|
||||||
|
to take effect.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
</itemizedlist>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
</sect1>
|
||||||
|
|
||||||
<sect1 id="release-9-3-16">
|
<sect1 id="release-9-3-16">
|
||||||
<title>Release 9.3.16</title>
|
<title>Release 9.3.16</title>
|
||||||
|
|
||||||
|
@ -1,6 +1,441 @@
|
|||||||
<!-- doc/src/sgml/release-9.4.sgml -->
|
<!-- doc/src/sgml/release-9.4.sgml -->
|
||||||
<!-- See header comment in release.sgml about typical markup -->
|
<!-- See header comment in release.sgml about typical markup -->
|
||||||
|
|
||||||
|
<sect1 id="release-9-4-12">
|
||||||
|
<title>Release 9.4.12</title>
|
||||||
|
|
||||||
|
<note>
|
||||||
|
<title>Release Date</title>
|
||||||
|
<simpara>2017-05-11</simpara>
|
||||||
|
</note>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This release contains a variety of fixes from 9.4.11.
|
||||||
|
For information about new features in the 9.4 major release, see
|
||||||
|
<xref linkend="release-9-4">.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<sect2>
|
||||||
|
<title>Migration to Version 9.4.12</title>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
A dump/restore is not required for those running 9.4.X.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
However, if you are using third-party replication tools that depend
|
||||||
|
on <quote>logical decoding</>, see the first changelog entry below.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Also, if you are upgrading from a version earlier than 9.4.11,
|
||||||
|
see <xref linkend="release-9-4-11">.
|
||||||
|
</para>
|
||||||
|
</sect2>
|
||||||
|
|
||||||
|
<sect2>
|
||||||
|
<title>Changes</title>
|
||||||
|
|
||||||
|
<itemizedlist>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix possibly-invalid initial snapshot during logical decoding
|
||||||
|
(Petr Jelinek, Andres Freund)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The initial snapshot created for a logical decoding replication slot
|
||||||
|
was potentially incorrect. This could cause third-party tools that
|
||||||
|
use logical decoding to copy incomplete/inconsistent initial data.
|
||||||
|
This was more likely to happen if the source server was busy at the
|
||||||
|
time of slot creation, or if another logical slot already existed.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
If you are using a replication tool that depends on logical decoding,
|
||||||
|
and it should have copied a nonempty data set at the start of
|
||||||
|
replication, it is advisable to recreate the replica after
|
||||||
|
installing this update, or to verify its contents against the source
|
||||||
|
server.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix possible corruption of <quote>init forks</> of unlogged indexes
|
||||||
|
(Robert Haas, Michael Paquier)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This could result in an unlogged index being set to an invalid state
|
||||||
|
after a crash and restart. Such a problem would persist until the
|
||||||
|
index was dropped and rebuilt.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix incorrect reconstruction of <structname>pg_subtrans</> entries
|
||||||
|
when a standby server replays a prepared but uncommitted two-phase
|
||||||
|
transaction (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
In most cases this turned out to have no visible ill effects, but in
|
||||||
|
corner cases it could result in circular references
|
||||||
|
in <structname>pg_subtrans</>, potentially causing infinite loops
|
||||||
|
in queries that examine rows modified by the two-phase transaction.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Avoid possible crash in <application>walsender</> due to failure
|
||||||
|
to initialize a string buffer (Stas Kelvich, Fujii Masao)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix postmaster's handling of <function>fork()</> failure for a
|
||||||
|
background worker process (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Previously, the postmaster updated portions of its state as though
|
||||||
|
the process had been launched successfully, resulting in subsequent
|
||||||
|
confusion.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Ensure parsing of queries in extension scripts sees the results of
|
||||||
|
immediately-preceding DDL (Julien Rouhaud, Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Due to lack of a cache flush step between commands in an extension
|
||||||
|
script file, non-utility queries might not see the effects of an
|
||||||
|
immediately preceding catalog change, such as <command>ALTER TABLE
|
||||||
|
... RENAME</>.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Skip tablespace privilege checks when <command>ALTER TABLE ... ALTER
|
||||||
|
COLUMN TYPE</> rebuilds an existing index (Noah Misch)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The command failed if the calling user did not currently have
|
||||||
|
<literal>CREATE</> privilege for the tablespace containing the index.
|
||||||
|
That behavior seems unhelpful, so skip the check, allowing the
|
||||||
|
index to be rebuilt where it is.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <command>ALTER TABLE ... VALIDATE CONSTRAINT</> to not recurse
|
||||||
|
to child tables when the constraint is marked <literal>NO INHERIT</>
|
||||||
|
(Amit Langote)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This fix prevents unwanted <quote>constraint does not exist</> failures
|
||||||
|
when no matching constraint is present in the child tables.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <command>VACUUM</> to account properly for pages that could not
|
||||||
|
be scanned due to conflicting page pins (Andrew Gierth)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This tended to lead to underestimation of the number of tuples in
|
||||||
|
the table. In the worst case of a small heavily-contended
|
||||||
|
table, <command>VACUUM</> could incorrectly report that the table
|
||||||
|
contained no tuples, leading to very bad planning choices.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Ensure that bulk-tuple-transfer loops within a hash join are
|
||||||
|
interruptible by query cancel requests (Tom Lane, Thomas Munro)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix integer-overflow problems in <type>interval</> comparison (Kyotaro
|
||||||
|
Horiguchi, Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The comparison operators for type <type>interval</> could yield wrong
|
||||||
|
answers for intervals larger than about 296000 years. Indexes on
|
||||||
|
columns containing such large values should be reindexed, since they
|
||||||
|
may be corrupt.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <function>cursor_to_xml()</> to produce valid output
|
||||||
|
with <replaceable>tableforest</> = false
|
||||||
|
(Thomas Munro, Peter Eisentraut)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Previously it failed to produce a wrapping <literal><table></>
|
||||||
|
element.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix roundoff problems in <function>float8_timestamptz()</>
|
||||||
|
and <function>make_interval()</> (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
These functions truncated, rather than rounded, when converting a
|
||||||
|
floating-point value to integer microseconds; that could cause
|
||||||
|
unexpectedly off-by-one results.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Improve performance of <structname>pg_timezone_names</> view
|
||||||
|
(Tom Lane, David Rowley)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Reduce memory management overhead for contexts containing many large
|
||||||
|
blocks (Tom Lane)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix sloppy handling of corner-case errors from <function>lseek()</>
|
||||||
|
and <function>close()</> (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Neither of these system calls are likely to fail in typical situations,
|
||||||
|
but if they did, <filename>fd.c</> could get quite confused.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix incorrect check for whether postmaster is running as a Windows
|
||||||
|
service (Michael Paquier)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This could result in attempting to write to the event log when that
|
||||||
|
isn't accessible, so that no logging happens at all.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <application>ecpg</> to support <command>COMMIT PREPARED</>
|
||||||
|
and <command>ROLLBACK PREPARED</> (Masahiko Sawada)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix a double-free error when processing dollar-quoted string literals
|
||||||
|
in <application>ecpg</> (Michael Meskes)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
In <application>pg_dump</>, fix incorrect schema and owner marking for
|
||||||
|
comments and security labels of some types of database objects
|
||||||
|
(Giuseppe Broccolo, Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
In simple cases this caused no ill effects; but for example, a
|
||||||
|
schema-selective restore might omit comments it should include, because
|
||||||
|
they were not marked as belonging to the schema of their associated
|
||||||
|
object.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Avoid emitting an invalid list file in <literal>pg_restore -l</>
|
||||||
|
when SQL object names contain newlines (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Replace newlines by spaces, which is sufficient to make the output
|
||||||
|
valid for <literal>pg_restore -L</>'s purposes.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <application>pg_upgrade</> to transfer comments and security labels
|
||||||
|
attached to <quote>large objects</> (blobs) (Stephen Frost)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Previously, blobs were correctly transferred to the new database, but
|
||||||
|
any comments or security labels attached to them were lost.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Improve error handling
|
||||||
|
in <filename>contrib/adminpack</>'s <function>pg_file_write()</>
|
||||||
|
function (Noah Misch)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Notably, it failed to detect errors reported
|
||||||
|
by <function>fclose()</>.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
In <filename>contrib/dblink</>, avoid leaking the previous unnamed
|
||||||
|
connection when establishing a new unnamed connection (Joe Conway)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <filename>contrib/pg_trgm</>'s extraction of trigrams from regular
|
||||||
|
expressions (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
In some cases it would produce a broken data structure that could never
|
||||||
|
match anything, leading to GIN or GiST indexscans that use a trigram
|
||||||
|
index not finding any matches to the regular expression.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
In <filename>contrib/postgres_fdw</>,
|
||||||
|
transmit query cancellation requests to the remote server
|
||||||
|
(Michael Paquier, Etsuro Fujita)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Previously, a local query cancellation request did not cause an
|
||||||
|
already-sent remote query to terminate early. This is a back-patch
|
||||||
|
of work originally done for 9.6.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<!--
|
||||||
|
Author: Tom Lane <tgl@sss.pgh.pa.us>
|
||||||
|
Branch: REL9_4_STABLE [bb132cddf] 2017-04-15 20:16:03 -0400
|
||||||
|
Branch: REL9_3_STABLE [fbfeceb25] 2017-04-17 12:51:40 -0400
|
||||||
|
Branch: REL9_2_STABLE [58384149b] 2017-04-17 12:51:40 -0400
|
||||||
|
Branch: REL9_3_STABLE [4e91330da] 2017-04-17 13:52:42 -0400
|
||||||
|
Branch: REL9_2_STABLE [fb50c38e9] 2017-04-17 13:52:42 -0400
|
||||||
|
-->
|
||||||
|
<para>
|
||||||
|
Support OpenSSL 1.1.0 (Heikki Linnakangas, Andreas Karlsson, Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This is a back-patch of work previously done in newer branches;
|
||||||
|
it's needed since many platforms are adopting newer OpenSSL versions.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Support Tcl 8.6 in MSVC builds (Álvaro Herrera)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Sync our copy of the timezone library with IANA release tzcode2017b
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This fixes a bug affecting some DST transitions in January 2038.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Update time zone data files to <application>tzdata</> release 2017b
|
||||||
|
for DST law changes in Chile, Haiti, and Mongolia, plus historical
|
||||||
|
corrections for Ecuador, Kazakhstan, Liberia, and Spain.
|
||||||
|
Switch to numeric abbreviations for numerous time zones in South
|
||||||
|
America, the Pacific and Indian oceans, and some Asian and Middle
|
||||||
|
Eastern countries.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The IANA time zone database previously provided textual abbreviations
|
||||||
|
for all time zones, sometimes making up abbreviations that have little
|
||||||
|
or no currency among the local population. They are in process of
|
||||||
|
reversing that policy in favor of using numeric UTC offsets in zones
|
||||||
|
where there is no evidence of real-world use of an English
|
||||||
|
abbreviation. At least for the time being, <productname>PostgreSQL</>
|
||||||
|
will continue to accept such removed abbreviations for timestamp input.
|
||||||
|
But they will not be shown in the <structname>pg_timezone_names</>
|
||||||
|
view nor used for output.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Use correct daylight-savings rules for POSIX-style time zone names
|
||||||
|
in MSVC builds (David Rowley)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The Microsoft MSVC build scripts neglected to install
|
||||||
|
the <filename>posixrules</> file in the timezone directory tree.
|
||||||
|
This resulted in the timezone code falling back to its built-in
|
||||||
|
rule about what DST behavior to assume for a POSIX-style time zone
|
||||||
|
name. For historical reasons that still corresponds to the DST rules
|
||||||
|
the USA was using before 2007 (i.e., change on first Sunday in April
|
||||||
|
and last Sunday in October). With this fix, a POSIX-style zone name
|
||||||
|
will use the current and historical DST transition dates of
|
||||||
|
the <literal>US/Eastern</> zone. If you don't want that, remove
|
||||||
|
the <filename>posixrules</> file, or replace it with a copy of some
|
||||||
|
other zone file (see <xref linkend="datatype-timezones">). Note that
|
||||||
|
due to caching, you may need to restart the server to get such changes
|
||||||
|
to take effect.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
</itemizedlist>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
</sect1>
|
||||||
|
|
||||||
<sect1 id="release-9-4-11">
|
<sect1 id="release-9-4-11">
|
||||||
<title>Release 9.4.11</title>
|
<title>Release 9.4.11</title>
|
||||||
|
|
||||||
|
@ -1,6 +1,502 @@
|
|||||||
<!-- doc/src/sgml/release-9.5.sgml -->
|
<!-- doc/src/sgml/release-9.5.sgml -->
|
||||||
<!-- See header comment in release.sgml about typical markup -->
|
<!-- See header comment in release.sgml about typical markup -->
|
||||||
|
|
||||||
|
<sect1 id="release-9-5-7">
|
||||||
|
<title>Release 9.5.7</title>
|
||||||
|
|
||||||
|
<note>
|
||||||
|
<title>Release Date</title>
|
||||||
|
<simpara>2017-05-11</simpara>
|
||||||
|
</note>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This release contains a variety of fixes from 9.5.6.
|
||||||
|
For information about new features in the 9.5 major release, see
|
||||||
|
<xref linkend="release-9-5">.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<sect2>
|
||||||
|
<title>Migration to Version 9.5.7</title>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
A dump/restore is not required for those running 9.5.X.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
However, if you are using third-party replication tools that depend
|
||||||
|
on <quote>logical decoding</>, see the first changelog entry below.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Also, if you are upgrading from a version earlier than 9.5.6,
|
||||||
|
see <xref linkend="release-9-5-6">.
|
||||||
|
</para>
|
||||||
|
</sect2>
|
||||||
|
|
||||||
|
<sect2>
|
||||||
|
<title>Changes</title>
|
||||||
|
|
||||||
|
<itemizedlist>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix possibly-invalid initial snapshot during logical decoding
|
||||||
|
(Petr Jelinek, Andres Freund)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The initial snapshot created for a logical decoding replication slot
|
||||||
|
was potentially incorrect. This could cause third-party tools that
|
||||||
|
use logical decoding to copy incomplete/inconsistent initial data.
|
||||||
|
This was more likely to happen if the source server was busy at the
|
||||||
|
time of slot creation, or if another logical slot already existed.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
If you are using a replication tool that depends on logical decoding,
|
||||||
|
and it should have copied a nonempty data set at the start of
|
||||||
|
replication, it is advisable to recreate the replica after
|
||||||
|
installing this update, or to verify its contents against the source
|
||||||
|
server.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix possible corruption of <quote>init forks</> of unlogged indexes
|
||||||
|
(Robert Haas, Michael Paquier)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This could result in an unlogged index being set to an invalid state
|
||||||
|
after a crash and restart. Such a problem would persist until the
|
||||||
|
index was dropped and rebuilt.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix incorrect reconstruction of <structname>pg_subtrans</> entries
|
||||||
|
when a standby server replays a prepared but uncommitted two-phase
|
||||||
|
transaction (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
In most cases this turned out to have no visible ill effects, but in
|
||||||
|
corner cases it could result in circular references
|
||||||
|
in <structname>pg_subtrans</>, potentially causing infinite loops
|
||||||
|
in queries that examine rows modified by the two-phase transaction.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Avoid possible crash in <application>walsender</> due to failure
|
||||||
|
to initialize a string buffer (Stas Kelvich, Fujii Masao)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix possible crash when rescanning a nearest-neighbor index-only scan
|
||||||
|
on a GiST index (Tom Lane)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix postmaster's handling of <function>fork()</> failure for a
|
||||||
|
background worker process (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Previously, the postmaster updated portions of its state as though
|
||||||
|
the process had been launched successfully, resulting in subsequent
|
||||||
|
confusion.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<!--
|
||||||
|
Author: Andrew Gierth <rhodiumtoad@postgresql.org>
|
||||||
|
Branch: REL9_5_STABLE [7be3678a8] 2017-04-24 07:53:05 +0100
|
||||||
|
-->
|
||||||
|
<para>
|
||||||
|
Fix crash or wrong answers when a <literal>GROUPING SETS</> column's
|
||||||
|
data type is hashable but not sortable (Pavan Deolasee)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Avoid applying <quote>physical targetlist</> optimization to custom
|
||||||
|
scans (Dmitry Ivanov, Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This optimization supposed that retrieving all columns of a tuple
|
||||||
|
is inexpensive, which is true for ordinary Postgres tuples; but it
|
||||||
|
might not be the case for a custom scan provider.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Use the correct sub-expression when applying a <literal>FOR ALL</>
|
||||||
|
row-level-security policy (Stephen Frost)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
In some cases the <literal>WITH CHECK</> restriction would be applied
|
||||||
|
when the <literal>USING</> restriction is more appropriate.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Ensure parsing of queries in extension scripts sees the results of
|
||||||
|
immediately-preceding DDL (Julien Rouhaud, Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Due to lack of a cache flush step between commands in an extension
|
||||||
|
script file, non-utility queries might not see the effects of an
|
||||||
|
immediately preceding catalog change, such as <command>ALTER TABLE
|
||||||
|
... RENAME</>.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Skip tablespace privilege checks when <command>ALTER TABLE ... ALTER
|
||||||
|
COLUMN TYPE</> rebuilds an existing index (Noah Misch)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The command failed if the calling user did not currently have
|
||||||
|
<literal>CREATE</> privilege for the tablespace containing the index.
|
||||||
|
That behavior seems unhelpful, so skip the check, allowing the
|
||||||
|
index to be rebuilt where it is.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <command>ALTER TABLE ... VALIDATE CONSTRAINT</> to not recurse
|
||||||
|
to child tables when the constraint is marked <literal>NO INHERIT</>
|
||||||
|
(Amit Langote)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This fix prevents unwanted <quote>constraint does not exist</> failures
|
||||||
|
when no matching constraint is present in the child tables.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Avoid dangling pointer in <command>COPY ... TO</> when row-level
|
||||||
|
security is active for the source table (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Usually this had no ill effects, but sometimes it would cause
|
||||||
|
unexpected errors or crashes.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Avoid accessing an already-closed relcache entry in <command>CLUSTER</>
|
||||||
|
and <command>VACUUM FULL</> (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
With some bad luck, this could lead to indexes on the target
|
||||||
|
relation getting rebuilt with the wrong persistence setting.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <command>VACUUM</> to account properly for pages that could not
|
||||||
|
be scanned due to conflicting page pins (Andrew Gierth)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This tended to lead to underestimation of the number of tuples in
|
||||||
|
the table. In the worst case of a small heavily-contended
|
||||||
|
table, <command>VACUUM</> could incorrectly report that the table
|
||||||
|
contained no tuples, leading to very bad planning choices.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Ensure that bulk-tuple-transfer loops within a hash join are
|
||||||
|
interruptible by query cancel requests (Tom Lane, Thomas Munro)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix integer-overflow problems in <type>interval</> comparison (Kyotaro
|
||||||
|
Horiguchi, Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The comparison operators for type <type>interval</> could yield wrong
|
||||||
|
answers for intervals larger than about 296000 years. Indexes on
|
||||||
|
columns containing such large values should be reindexed, since they
|
||||||
|
may be corrupt.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <function>cursor_to_xml()</> to produce valid output
|
||||||
|
with <replaceable>tableforest</> = false
|
||||||
|
(Thomas Munro, Peter Eisentraut)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Previously it failed to produce a wrapping <literal><table></>
|
||||||
|
element.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix roundoff problems in <function>float8_timestamptz()</>
|
||||||
|
and <function>make_interval()</> (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
These functions truncated, rather than rounded, when converting a
|
||||||
|
floating-point value to integer microseconds; that could cause
|
||||||
|
unexpectedly off-by-one results.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <function>pg_get_object_address()</> to handle members of operator
|
||||||
|
families correctly (Álvaro Herrera)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Improve performance of <structname>pg_timezone_names</> view
|
||||||
|
(Tom Lane, David Rowley)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Reduce memory management overhead for contexts containing many large
|
||||||
|
blocks (Tom Lane)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix sloppy handling of corner-case errors from <function>lseek()</>
|
||||||
|
and <function>close()</> (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Neither of these system calls are likely to fail in typical situations,
|
||||||
|
but if they did, <filename>fd.c</> could get quite confused.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix incorrect check for whether postmaster is running as a Windows
|
||||||
|
service (Michael Paquier)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This could result in attempting to write to the event log when that
|
||||||
|
isn't accessible, so that no logging happens at all.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <application>ecpg</> to support <command>COMMIT PREPARED</>
|
||||||
|
and <command>ROLLBACK PREPARED</> (Masahiko Sawada)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix a double-free error when processing dollar-quoted string literals
|
||||||
|
in <application>ecpg</> (Michael Meskes)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
In <application>pg_dump</>, fix incorrect schema and owner marking for
|
||||||
|
comments and security labels of some types of database objects
|
||||||
|
(Giuseppe Broccolo, Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
In simple cases this caused no ill effects; but for example, a
|
||||||
|
schema-selective restore might omit comments it should include, because
|
||||||
|
they were not marked as belonging to the schema of their associated
|
||||||
|
object.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Avoid emitting an invalid list file in <literal>pg_restore -l</>
|
||||||
|
when SQL object names contain newlines (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Replace newlines by spaces, which is sufficient to make the output
|
||||||
|
valid for <literal>pg_restore -L</>'s purposes.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <application>pg_upgrade</> to transfer comments and security labels
|
||||||
|
attached to <quote>large objects</> (blobs) (Stephen Frost)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Previously, blobs were correctly transferred to the new database, but
|
||||||
|
any comments or security labels attached to them were lost.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Improve error handling
|
||||||
|
in <filename>contrib/adminpack</>'s <function>pg_file_write()</>
|
||||||
|
function (Noah Misch)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Notably, it failed to detect errors reported
|
||||||
|
by <function>fclose()</>.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
In <filename>contrib/dblink</>, avoid leaking the previous unnamed
|
||||||
|
connection when establishing a new unnamed connection (Joe Conway)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <filename>contrib/pg_trgm</>'s extraction of trigrams from regular
|
||||||
|
expressions (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
In some cases it would produce a broken data structure that could never
|
||||||
|
match anything, leading to GIN or GiST indexscans that use a trigram
|
||||||
|
index not finding any matches to the regular expression.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<!--
|
||||||
|
Author: Robert Haas <rhaas@postgresql.org>
|
||||||
|
Branch: REL9_5_STABLE [cdf5a004b] 2017-05-06 22:21:38 -0400
|
||||||
|
Branch: REL9_4_STABLE [f14bf0a8f] 2017-05-06 22:19:56 -0400
|
||||||
|
Branch: REL9_3_STABLE [3aa16b117] 2017-05-06 22:17:35 -0400
|
||||||
|
-->
|
||||||
|
<para>
|
||||||
|
In <filename>contrib/postgres_fdw</>,
|
||||||
|
transmit query cancellation requests to the remote server
|
||||||
|
(Michael Paquier, Etsuro Fujita)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Previously, a local query cancellation request did not cause an
|
||||||
|
already-sent remote query to terminate early. This is a back-patch
|
||||||
|
of work originally done for 9.6.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Support Tcl 8.6 in MSVC builds (Álvaro Herrera)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Sync our copy of the timezone library with IANA release tzcode2017b
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This fixes a bug affecting some DST transitions in January 2038.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Update time zone data files to <application>tzdata</> release 2017b
|
||||||
|
for DST law changes in Chile, Haiti, and Mongolia, plus historical
|
||||||
|
corrections for Ecuador, Kazakhstan, Liberia, and Spain.
|
||||||
|
Switch to numeric abbreviations for numerous time zones in South
|
||||||
|
America, the Pacific and Indian oceans, and some Asian and Middle
|
||||||
|
Eastern countries.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The IANA time zone database previously provided textual abbreviations
|
||||||
|
for all time zones, sometimes making up abbreviations that have little
|
||||||
|
or no currency among the local population. They are in process of
|
||||||
|
reversing that policy in favor of using numeric UTC offsets in zones
|
||||||
|
where there is no evidence of real-world use of an English
|
||||||
|
abbreviation. At least for the time being, <productname>PostgreSQL</>
|
||||||
|
will continue to accept such removed abbreviations for timestamp input.
|
||||||
|
But they will not be shown in the <structname>pg_timezone_names</>
|
||||||
|
view nor used for output.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Use correct daylight-savings rules for POSIX-style time zone names
|
||||||
|
in MSVC builds (David Rowley)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The Microsoft MSVC build scripts neglected to install
|
||||||
|
the <filename>posixrules</> file in the timezone directory tree.
|
||||||
|
This resulted in the timezone code falling back to its built-in
|
||||||
|
rule about what DST behavior to assume for a POSIX-style time zone
|
||||||
|
name. For historical reasons that still corresponds to the DST rules
|
||||||
|
the USA was using before 2007 (i.e., change on first Sunday in April
|
||||||
|
and last Sunday in October). With this fix, a POSIX-style zone name
|
||||||
|
will use the current and historical DST transition dates of
|
||||||
|
the <literal>US/Eastern</> zone. If you don't want that, remove
|
||||||
|
the <filename>posixrules</> file, or replace it with a copy of some
|
||||||
|
other zone file (see <xref linkend="datatype-timezones">). Note that
|
||||||
|
due to caching, you may need to restart the server to get such changes
|
||||||
|
to take effect.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
</itemizedlist>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
</sect1>
|
||||||
|
|
||||||
<sect1 id="release-9-5-6">
|
<sect1 id="release-9-5-6">
|
||||||
<title>Release 9.5.6</title>
|
<title>Release 9.5.6</title>
|
||||||
|
|
||||||
|
@ -188,17 +188,6 @@ Branch: REL9_4_STABLE [436b560b8] 2017-04-24 12:16:58 -0400
|
|||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<!--
|
<!--
|
||||||
Author: Andrew Gierth <rhodiumtoad@postgresql.org>
|
|
||||||
Branch: REL9_5_STABLE [7be3678a8] 2017-04-24 07:53:05 +0100
|
|
||||||
-->
|
|
||||||
<para>
|
|
||||||
Fix crash or wrong answers when a <literal>GROUPING SETS</> column's
|
|
||||||
data type is hashable but not sortable (Pavan Deolasee)
|
|
||||||
</para>
|
|
||||||
</listitem>
|
|
||||||
|
|
||||||
<listitem>
|
|
||||||
<!--
|
|
||||||
Author: Tom Lane <tgl@sss.pgh.pa.us>
|
Author: Tom Lane <tgl@sss.pgh.pa.us>
|
||||||
Branch: master [89deca582] 2017-04-07 12:18:38 -0400
|
Branch: master [89deca582] 2017-04-07 12:18:38 -0400
|
||||||
Branch: REL9_6_STABLE [c0a493e17] 2017-04-07 12:18:38 -0400
|
Branch: REL9_6_STABLE [c0a493e17] 2017-04-07 12:18:38 -0400
|
||||||
@ -851,45 +840,6 @@ Branch: REL9_6_STABLE [86e640a69] 2017-04-26 09:14:21 -0400
|
|||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<!--
|
<!--
|
||||||
Author: Robert Haas <rhaas@postgresql.org>
|
|
||||||
Branch: REL9_5_STABLE [cdf5a004b] 2017-05-06 22:21:38 -0400
|
|
||||||
Branch: REL9_4_STABLE [f14bf0a8f] 2017-05-06 22:19:56 -0400
|
|
||||||
Branch: REL9_3_STABLE [3aa16b117] 2017-05-06 22:17:35 -0400
|
|
||||||
-->
|
|
||||||
<para>
|
|
||||||
In <filename>contrib/postgres_fdw</>,
|
|
||||||
transmit query cancellation requests to the remote server
|
|
||||||
(Michael Paquier, Etsuro Fujita)
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
Previously, a local query cancellation request did not cause an
|
|
||||||
already-sent remote query to terminate early. This is a back-patch
|
|
||||||
of work originally done for 9.6.
|
|
||||||
</para>
|
|
||||||
</listitem>
|
|
||||||
|
|
||||||
<listitem>
|
|
||||||
<!--
|
|
||||||
Author: Tom Lane <tgl@sss.pgh.pa.us>
|
|
||||||
Branch: REL9_4_STABLE [bb132cddf] 2017-04-15 20:16:03 -0400
|
|
||||||
Branch: REL9_3_STABLE [fbfeceb25] 2017-04-17 12:51:40 -0400
|
|
||||||
Branch: REL9_2_STABLE [58384149b] 2017-04-17 12:51:40 -0400
|
|
||||||
Branch: REL9_3_STABLE [4e91330da] 2017-04-17 13:52:42 -0400
|
|
||||||
Branch: REL9_2_STABLE [fb50c38e9] 2017-04-17 13:52:42 -0400
|
|
||||||
-->
|
|
||||||
<para>
|
|
||||||
Support OpenSSL 1.1.0 (Heikki Linnakangas, Andreas Karlsson, Tom Lane)
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
This is a back-patch of work previously done in newer branches;
|
|
||||||
it's needed since many platforms are adopting newer OpenSSL versions.
|
|
||||||
</para>
|
|
||||||
</listitem>
|
|
||||||
|
|
||||||
<listitem>
|
|
||||||
<!--
|
|
||||||
Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
|
Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
|
||||||
Branch: master [14722c69f] 2017-05-05 12:38:29 -0300
|
Branch: master [14722c69f] 2017-05-05 12:38:29 -0300
|
||||||
Branch: REL9_6_STABLE [19a403378] 2017-05-05 12:05:34 -0300
|
Branch: REL9_6_STABLE [19a403378] 2017-05-05 12:05:34 -0300
|
||||||
|
Loading…
x
Reference in New Issue
Block a user