mirror of
https://github.com/postgres/postgres.git
synced 2025-06-03 00:02:26 -04:00
Release notes for 9.6.4, 9.5.8, 9.4.13, 9.3.18, 9.2.22.
This commit is contained in:
parent
5af4456a56
commit
b35006eccc
@ -1,6 +1,347 @@
|
||||
<!-- doc/src/sgml/release-9.2.sgml -->
|
||||
<!-- See header comment in release.sgml about typical markup -->
|
||||
|
||||
<sect1 id="release-9-2-22">
|
||||
<title>Release 9.2.22</title>
|
||||
|
||||
<formalpara>
|
||||
<title>Release date:</title>
|
||||
<para>2017-08-10</para>
|
||||
</formalpara>
|
||||
|
||||
<para>
|
||||
This release contains a variety of fixes from 9.2.21.
|
||||
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.22</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>
|
||||
On Windows, retry process creation if we fail to reserve the address
|
||||
range for our shared memory in the new process (Tom Lane, Amit
|
||||
Kapila)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This is expected to fix infrequent child-process-launch failures that
|
||||
are probably due to interference from antivirus products.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix low-probability corruption of shared predicate-lock hash table
|
||||
in Windows builds (Thomas Munro, Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Avoid logging clean closure of an SSL connection as though
|
||||
it were a connection reset (Michael Paquier)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Prevent sending SSL session tickets to clients (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This fix prevents reconnection failures with ticket-aware client-side
|
||||
SSL code.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix code for setting <xref linkend="guc-tcp-keepalives-idle"> on
|
||||
Solaris (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix statistics collector to honor inquiry messages issued just after
|
||||
a postmaster shutdown and immediate restart (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Statistics inquiries issued within half a second of the previous
|
||||
postmaster shutdown were effectively ignored.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Ensure that the statistics collector's receive buffer size is at
|
||||
least 100KB (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This reduces the risk of dropped statistics data on older platforms
|
||||
whose default receive buffer size is less than that.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix possible creation of an invalid WAL segment when a standby is
|
||||
promoted just after it processes an <literal>XLOG_SWITCH</> WAL
|
||||
record (Andres Freund)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <systemitem>SIGHUP</> and <systemitem>SIGUSR1</> handling in
|
||||
walsender processes (Petr Jelinek, Andres Freund)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix unnecessarily slow restarts of <application>walreceiver</>
|
||||
processes due to race condition in postmaster (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix cases where an <command>INSERT</> or <command>UPDATE</> assigns
|
||||
to more than one element of a column that is of domain-over-array
|
||||
type (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Move autogenerated array types out of the way during
|
||||
<command>ALTER ... RENAME</> (Vik Fearing)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Previously, we would rename a conflicting autogenerated array type
|
||||
out of the way during <command>CREATE</>; this fix extends that
|
||||
behavior to renaming operations.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Ensure that <command>ALTER USER ... SET</> accepts all the syntax
|
||||
variants that <command>ALTER ROLE ... SET</> does (Peter Eisentraut)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Properly update dependency info when changing a datatype I/O
|
||||
function's argument or return type from <type>opaque</> to the
|
||||
correct type (Heikki Linnakangas)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<command>CREATE TYPE</> updates I/O functions declared in this
|
||||
long-obsolete style, but it forgot to record a dependency on the
|
||||
type, allowing a subsequent <command>DROP TYPE</> to leave broken
|
||||
function definitions behind.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Reduce memory usage when <command>ANALYZE</> processes
|
||||
a <type>tsvector</> column (Heikki Linnakangas)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix unnecessary precision loss and sloppy rounding when multiplying
|
||||
or dividing <type>money</> values by integers or floats (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Tighten checks for whitespace in functions that parse identifiers,
|
||||
such as <function>regprocedurein()</> (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Depending on the prevailing locale, these functions could
|
||||
misinterpret fragments of multibyte characters as whitespace.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Use relevant <literal>#define</> symbols from Perl while
|
||||
compiling <application>PL/Perl</> (Ashutosh Sharma, Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This avoids portability problems, typically manifesting as
|
||||
a <quote>handshake</> mismatch during library load, when working with
|
||||
recent Perl versions.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In <application>psql</>, fix failure when <command>COPY FROM STDIN</>
|
||||
is ended with a keyboard EOF signal and then another <command>COPY
|
||||
FROM STDIN</> is attempted (Thomas Munro)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This misbehavior was observed on BSD-derived platforms (including
|
||||
macOS), but not on most others.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>pg_dump</> to not emit invalid SQL for an empty
|
||||
operator class (Daniel Gustafsson)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>pg_dump</> output to stdout on Windows (Kuntal Ghosh)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
A compressed plain-text dump written to stdout would contain corrupt
|
||||
data due to failure to put the file descriptor into binary mode.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <function>pg_get_ruledef()</> to print correct output for
|
||||
the <literal>ON SELECT</> rule of a view whose columns have been
|
||||
renamed (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
In some corner cases, <application>pg_dump</> relies
|
||||
on <function>pg_get_ruledef()</> to dump views, so that this error
|
||||
could result in dump/reload failures.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix dumping of function expressions in the <literal>FROM</> clause in
|
||||
cases where the expression does not deparse into something that looks
|
||||
like a function call (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>pg_basebackup</> output to stdout on Windows
|
||||
(Haribabu Kommi)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
A backup written to stdout would contain corrupt data due to failure
|
||||
to put the file descriptor into binary mode.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>pg_upgrade</> to ensure that the ending WAL record
|
||||
does not have <xref linkend="guc-wal-level"> = <literal>minimum</>
|
||||
(Bruce Momjian)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This condition could prevent upgraded standby servers from
|
||||
reconnecting.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Always use <option>-fPIC</>, not <option>-fpic</>, when building
|
||||
shared libraries with gcc (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This supports larger extension libraries on platforms where it makes
|
||||
a difference.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix unescaped-braces issue in our build scripts for Microsoft MSVC,
|
||||
to avoid a warning or error from recent Perl versions (Andrew
|
||||
Dunstan)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In MSVC builds, handle the case where the <application>openssl</>
|
||||
library is not within a <filename>VC</> subdirectory (Andrew Dunstan)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In MSVC builds, add proper include path for <application>libxml2</>
|
||||
header files (Andrew Dunstan)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This fixes a former need to move things around in standard Windows
|
||||
installations of <application>libxml2</>.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In MSVC builds, recognize a Tcl library that is
|
||||
named <filename>tcl86.lib</> (Noah Misch)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
</itemizedlist>
|
||||
|
||||
</sect2>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="release-9-2-21">
|
||||
<title>Release 9.2.21</title>
|
||||
|
||||
|
@ -1,6 +1,440 @@
|
||||
<!-- doc/src/sgml/release-9.3.sgml -->
|
||||
<!-- See header comment in release.sgml about typical markup -->
|
||||
|
||||
<sect1 id="release-9-3-18">
|
||||
<title>Release 9.3.18</title>
|
||||
|
||||
<formalpara>
|
||||
<title>Release date:</title>
|
||||
<para>2017-08-10</para>
|
||||
</formalpara>
|
||||
|
||||
<para>
|
||||
This release contains a variety of fixes from 9.3.17.
|
||||
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.18</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 concurrent locking of tuple update chains (Álvaro Herrera)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
If several sessions concurrently lock a tuple update chain with
|
||||
nonconflicting lock modes using an old snapshot, and they all
|
||||
succeed, it was possible for some of them to nonetheless fail (and
|
||||
conclude there is no live tuple version) due to a race condition.
|
||||
This had consequences such as foreign-key checks failing to see a
|
||||
tuple that definitely exists but is being updated concurrently.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix potential data corruption when freezing a tuple whose XMAX is a
|
||||
multixact with exactly one still-interesting member (Teodor Sigaev)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
On Windows, retry process creation if we fail to reserve the address
|
||||
range for our shared memory in the new process (Tom Lane, Amit
|
||||
Kapila)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This is expected to fix infrequent child-process-launch failures that
|
||||
are probably due to interference from antivirus products.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix low-probability corruption of shared predicate-lock hash table
|
||||
in Windows builds (Thomas Munro, Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Avoid logging clean closure of an SSL connection as though
|
||||
it were a connection reset (Michael Paquier)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Prevent sending SSL session tickets to clients (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This fix prevents reconnection failures with ticket-aware client-side
|
||||
SSL code.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix code for setting <xref linkend="guc-tcp-keepalives-idle"> on
|
||||
Solaris (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix statistics collector to honor inquiry messages issued just after
|
||||
a postmaster shutdown and immediate restart (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Statistics inquiries issued within half a second of the previous
|
||||
postmaster shutdown were effectively ignored.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Ensure that the statistics collector's receive buffer size is at
|
||||
least 100KB (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This reduces the risk of dropped statistics data on older platforms
|
||||
whose default receive buffer size is less than that.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix possible creation of an invalid WAL segment when a standby is
|
||||
promoted just after it processes an <literal>XLOG_SWITCH</> WAL
|
||||
record (Andres Freund)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <systemitem>SIGHUP</> and <systemitem>SIGUSR1</> handling in
|
||||
walsender processes (Petr Jelinek, Andres Freund)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix unnecessarily slow restarts of <application>walreceiver</>
|
||||
processes due to race condition in postmaster (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix cases where an <command>INSERT</> or <command>UPDATE</> assigns
|
||||
to more than one element of a column that is of domain-over-array
|
||||
type (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Allow window functions to be used in sub-<literal>SELECT</>s that
|
||||
are within the arguments of an aggregate function (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Move autogenerated array types out of the way during
|
||||
<command>ALTER ... RENAME</> (Vik Fearing)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Previously, we would rename a conflicting autogenerated array type
|
||||
out of the way during <command>CREATE</>; this fix extends that
|
||||
behavior to renaming operations.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Ensure that <command>ALTER USER ... SET</> accepts all the syntax
|
||||
variants that <command>ALTER ROLE ... SET</> does (Peter Eisentraut)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Properly update dependency info when changing a datatype I/O
|
||||
function's argument or return type from <type>opaque</> to the
|
||||
correct type (Heikki Linnakangas)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<command>CREATE TYPE</> updates I/O functions declared in this
|
||||
long-obsolete style, but it forgot to record a dependency on the
|
||||
type, allowing a subsequent <command>DROP TYPE</> to leave broken
|
||||
function definitions behind.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Reduce memory usage when <command>ANALYZE</> processes
|
||||
a <type>tsvector</> column (Heikki Linnakangas)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix unnecessary precision loss and sloppy rounding when multiplying
|
||||
or dividing <type>money</> values by integers or floats (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Tighten checks for whitespace in functions that parse identifiers,
|
||||
such as <function>regprocedurein()</> (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Depending on the prevailing locale, these functions could
|
||||
misinterpret fragments of multibyte characters as whitespace.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Use relevant <literal>#define</> symbols from Perl while
|
||||
compiling <application>PL/Perl</> (Ashutosh Sharma, Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This avoids portability problems, typically manifesting as
|
||||
a <quote>handshake</> mismatch during library load, when working with
|
||||
recent Perl versions.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In <application>libpq</>, reset GSS/SASL and SSPI authentication
|
||||
state properly after a failed connection attempt (Michael Paquier)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Failure to do this meant that when falling back from SSL to non-SSL
|
||||
connections, a GSS/SASL failure in the SSL attempt would always cause
|
||||
the non-SSL attempt to fail. SSPI did not fail, but it leaked memory.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In <application>psql</>, fix failure when <command>COPY FROM STDIN</>
|
||||
is ended with a keyboard EOF signal and then another <command>COPY
|
||||
FROM STDIN</> is attempted (Thomas Munro)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This misbehavior was observed on BSD-derived platforms (including
|
||||
macOS), but not on most others.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>pg_dump</> and <application>pg_restore</> to
|
||||
emit <command>REFRESH MATERIALIZED VIEW</> commands last (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This prevents errors during dump/restore when a materialized view
|
||||
refers to tables owned by a different user.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>pg_dump</> with the <option>--clean</> option to
|
||||
drop event triggers as expected (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
It also now correctly assigns ownership of event triggers; before,
|
||||
they were restored as being owned by the superuser running the
|
||||
restore script.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>pg_dump</> to not emit invalid SQL for an empty
|
||||
operator class (Daniel Gustafsson)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>pg_dump</> output to stdout on Windows (Kuntal Ghosh)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
A compressed plain-text dump written to stdout would contain corrupt
|
||||
data due to failure to put the file descriptor into binary mode.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <function>pg_get_ruledef()</> to print correct output for
|
||||
the <literal>ON SELECT</> rule of a view whose columns have been
|
||||
renamed (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
In some corner cases, <application>pg_dump</> relies
|
||||
on <function>pg_get_ruledef()</> to dump views, so that this error
|
||||
could result in dump/reload failures.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix dumping of outer joins with empty constraints, such as the result
|
||||
of a <literal>NATURAL LEFT JOIN</> with no common columns (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix dumping of function expressions in the <literal>FROM</> clause in
|
||||
cases where the expression does not deparse into something that looks
|
||||
like a function call (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>pg_basebackup</> output to stdout on Windows
|
||||
(Haribabu Kommi)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
A backup written to stdout would contain corrupt data due to failure
|
||||
to put the file descriptor into binary mode.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>pg_upgrade</> to ensure that the ending WAL record
|
||||
does not have <xref linkend="guc-wal-level"> = <literal>minimum</>
|
||||
(Bruce Momjian)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This condition could prevent upgraded standby servers from
|
||||
reconnecting.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In <filename>postgres_fdw</>, re-establish connections to remote
|
||||
servers after <command>ALTER SERVER</> or <command>ALTER USER
|
||||
MAPPING</> commands (Kyotaro Horiguchi)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This ensures that option changes affecting connection parameters will
|
||||
be applied promptly.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In <filename>postgres_fdw</>, allow cancellation of remote
|
||||
transaction control commands (Robert Haas, Rafia Sabih)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This change allows us to quickly escape a wait for an unresponsive
|
||||
remote server in many more cases than previously.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Always use <option>-fPIC</>, not <option>-fpic</>, when building
|
||||
shared libraries with gcc (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This supports larger extension libraries on platforms where it makes
|
||||
a difference.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix unescaped-braces issue in our build scripts for Microsoft MSVC,
|
||||
to avoid a warning or error from recent Perl versions (Andrew
|
||||
Dunstan)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In MSVC builds, handle the case where the <application>openssl</>
|
||||
library is not within a <filename>VC</> subdirectory (Andrew Dunstan)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In MSVC builds, add proper include path for <application>libxml2</>
|
||||
header files (Andrew Dunstan)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This fixes a former need to move things around in standard Windows
|
||||
installations of <application>libxml2</>.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In MSVC builds, recognize a Tcl library that is
|
||||
named <filename>tcl86.lib</> (Noah Misch)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
</itemizedlist>
|
||||
|
||||
</sect2>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="release-9-3-17">
|
||||
<title>Release 9.3.17</title>
|
||||
|
||||
|
@ -1,6 +1,540 @@
|
||||
<!-- doc/src/sgml/release-9.4.sgml -->
|
||||
<!-- See header comment in release.sgml about typical markup -->
|
||||
|
||||
<sect1 id="release-9-4-13">
|
||||
<title>Release 9.4.13</title>
|
||||
|
||||
<formalpara>
|
||||
<title>Release date:</title>
|
||||
<para>2017-08-10</para>
|
||||
</formalpara>
|
||||
|
||||
<para>
|
||||
This release contains a variety of fixes from 9.4.12.
|
||||
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.13</title>
|
||||
|
||||
<para>
|
||||
A dump/restore is not required for those running 9.4.X.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
However, if you are upgrading from a version earlier than 9.4.12,
|
||||
see <xref linkend="release-9-4-12">.
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<title>Changes</title>
|
||||
|
||||
<itemizedlist>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix concurrent locking of tuple update chains (Álvaro Herrera)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
If several sessions concurrently lock a tuple update chain with
|
||||
nonconflicting lock modes using an old snapshot, and they all
|
||||
succeed, it was possible for some of them to nonetheless fail (and
|
||||
conclude there is no live tuple version) due to a race condition.
|
||||
This had consequences such as foreign-key checks failing to see a
|
||||
tuple that definitely exists but is being updated concurrently.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix potential data corruption when freezing a tuple whose XMAX is a
|
||||
multixact with exactly one still-interesting member (Teodor Sigaev)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Avoid integer overflow and ensuing crash when sorting more than one
|
||||
billion tuples in-memory (Sergey Koposov)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
On Windows, retry process creation if we fail to reserve the address
|
||||
range for our shared memory in the new process (Tom Lane, Amit
|
||||
Kapila)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This is expected to fix infrequent child-process-launch failures that
|
||||
are probably due to interference from antivirus products.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix low-probability corruption of shared predicate-lock hash table
|
||||
in Windows builds (Thomas Munro, Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Avoid logging clean closure of an SSL connection as though
|
||||
it were a connection reset (Michael Paquier)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Prevent sending SSL session tickets to clients (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This fix prevents reconnection failures with ticket-aware client-side
|
||||
SSL code.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix code for setting <xref linkend="guc-tcp-keepalives-idle"> on
|
||||
Solaris (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix statistics collector to honor inquiry messages issued just after
|
||||
a postmaster shutdown and immediate restart (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Statistics inquiries issued within half a second of the previous
|
||||
postmaster shutdown were effectively ignored.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Ensure that the statistics collector's receive buffer size is at
|
||||
least 100KB (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This reduces the risk of dropped statistics data on older platforms
|
||||
whose default receive buffer size is less than that.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix possible creation of an invalid WAL segment when a standby is
|
||||
promoted just after it processes an <literal>XLOG_SWITCH</> WAL
|
||||
record (Andres Freund)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>walsender</> to exit promptly when client requests
|
||||
shutdown (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <systemitem>SIGHUP</> and <systemitem>SIGUSR1</> handling in
|
||||
walsender processes (Petr Jelinek, Andres Freund)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Prevent walsender-triggered panics during shutdown checkpoints
|
||||
(Andres Freund, Michael Paquier)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix unnecessarily slow restarts of <application>walreceiver</>
|
||||
processes due to race condition in postmaster (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<!--
|
||||
Author: Andres Freund <andres@anarazel.de>
|
||||
Branch: REL9_4_STABLE [23a2b818f] 2017-08-05 14:56:40 -0700
|
||||
-->
|
||||
<para>
|
||||
Fix logical decoding failure with very wide tuples (Andres Freund)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Logical decoding crashed on tuples that are wider than 64KB (after
|
||||
compression, but with all data in-line). The case arises only
|
||||
when <literal>REPLICA IDENTITY FULL</> is enabled for a table
|
||||
containing such tuples.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix leakage of small subtransactions spilled to disk during logical
|
||||
decoding (Andres Freund)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This resulted in temporary files consuming excessive disk space.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Reduce the work needed to build snapshots during creation of
|
||||
logical-decoding slots (Andres Freund, Petr Jelinek)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The previous algorithm was infeasibly expensive on a server with a
|
||||
lot of open transactions.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix race condition that could indefinitely delay creation of
|
||||
logical-decoding slots (Andres Freund, Petr Jelinek)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Reduce overhead in processing syscache invalidation events (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This is particularly helpful for logical decoding, which triggers
|
||||
frequent cache invalidation.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix cases where an <command>INSERT</> or <command>UPDATE</> assigns
|
||||
to more than one element of a column that is of domain-over-array
|
||||
type (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Allow window functions to be used in sub-<literal>SELECT</>s that
|
||||
are within the arguments of an aggregate function (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Move autogenerated array types out of the way during
|
||||
<command>ALTER ... RENAME</> (Vik Fearing)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Previously, we would rename a conflicting autogenerated array type
|
||||
out of the way during <command>CREATE</>; this fix extends that
|
||||
behavior to renaming operations.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Ensure that <command>ALTER USER ... SET</> accepts all the syntax
|
||||
variants that <command>ALTER ROLE ... SET</> does (Peter Eisentraut)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Properly update dependency info when changing a datatype I/O
|
||||
function's argument or return type from <type>opaque</> to the
|
||||
correct type (Heikki Linnakangas)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<command>CREATE TYPE</> updates I/O functions declared in this
|
||||
long-obsolete style, but it forgot to record a dependency on the
|
||||
type, allowing a subsequent <command>DROP TYPE</> to leave broken
|
||||
function definitions behind.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Reduce memory usage when <command>ANALYZE</> processes
|
||||
a <type>tsvector</> column (Heikki Linnakangas)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix unnecessary precision loss and sloppy rounding when multiplying
|
||||
or dividing <type>money</> values by integers or floats (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Tighten checks for whitespace in functions that parse identifiers,
|
||||
such as <function>regprocedurein()</> (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Depending on the prevailing locale, these functions could
|
||||
misinterpret fragments of multibyte characters as whitespace.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Use relevant <literal>#define</> symbols from Perl while
|
||||
compiling <application>PL/Perl</> (Ashutosh Sharma, Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This avoids portability problems, typically manifesting as
|
||||
a <quote>handshake</> mismatch during library load, when working with
|
||||
recent Perl versions.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In <application>libpq</>, reset GSS/SASL and SSPI authentication
|
||||
state properly after a failed connection attempt (Michael Paquier)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Failure to do this meant that when falling back from SSL to non-SSL
|
||||
connections, a GSS/SASL failure in the SSL attempt would always cause
|
||||
the non-SSL attempt to fail. SSPI did not fail, but it leaked memory.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In <application>psql</>, fix failure when <command>COPY FROM STDIN</>
|
||||
is ended with a keyboard EOF signal and then another <command>COPY
|
||||
FROM STDIN</> is attempted (Thomas Munro)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This misbehavior was observed on BSD-derived platforms (including
|
||||
macOS), but not on most others.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>pg_dump</> and <application>pg_restore</> to
|
||||
emit <command>REFRESH MATERIALIZED VIEW</> commands last (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This prevents errors during dump/restore when a materialized view
|
||||
refers to tables owned by a different user.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Improve <application>pg_dump</>/<application>pg_restore</>'s
|
||||
reporting of error conditions originating in <application>zlib</>
|
||||
(Vladimir Kunschikov, Álvaro Herrera)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>pg_dump</> with the <option>--clean</> option to
|
||||
drop event triggers as expected (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
It also now correctly assigns ownership of event triggers; before,
|
||||
they were restored as being owned by the superuser running the
|
||||
restore script.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>pg_dump</> to not emit invalid SQL for an empty
|
||||
operator class (Daniel Gustafsson)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>pg_dump</> output to stdout on Windows (Kuntal Ghosh)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
A compressed plain-text dump written to stdout would contain corrupt
|
||||
data due to failure to put the file descriptor into binary mode.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <function>pg_get_ruledef()</> to print correct output for
|
||||
the <literal>ON SELECT</> rule of a view whose columns have been
|
||||
renamed (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
In some corner cases, <application>pg_dump</> relies
|
||||
on <function>pg_get_ruledef()</> to dump views, so that this error
|
||||
could result in dump/reload failures.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix dumping of outer joins with empty constraints, such as the result
|
||||
of a <literal>NATURAL LEFT JOIN</> with no common columns (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix dumping of function expressions in the <literal>FROM</> clause in
|
||||
cases where the expression does not deparse into something that looks
|
||||
like a function call (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>pg_basebackup</> output to stdout on Windows
|
||||
(Haribabu Kommi)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
A backup written to stdout would contain corrupt data due to failure
|
||||
to put the file descriptor into binary mode.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>pg_upgrade</> to ensure that the ending WAL record
|
||||
does not have <xref linkend="guc-wal-level"> = <literal>minimum</>
|
||||
(Bruce Momjian)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This condition could prevent upgraded standby servers from
|
||||
reconnecting.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In <filename>postgres_fdw</>, re-establish connections to remote
|
||||
servers after <command>ALTER SERVER</> or <command>ALTER USER
|
||||
MAPPING</> commands (Kyotaro Horiguchi)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This ensures that option changes affecting connection parameters will
|
||||
be applied promptly.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In <filename>postgres_fdw</>, allow cancellation of remote
|
||||
transaction control commands (Robert Haas, Rafia Sabih)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This change allows us to quickly escape a wait for an unresponsive
|
||||
remote server in many more cases than previously.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Increase <literal>MAX_SYSCACHE_CALLBACKS</> to provide more room for
|
||||
extensions (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Always use <option>-fPIC</>, not <option>-fpic</>, when building
|
||||
shared libraries with gcc (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This supports larger extension libraries on platforms where it makes
|
||||
a difference.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix unescaped-braces issue in our build scripts for Microsoft MSVC,
|
||||
to avoid a warning or error from recent Perl versions (Andrew
|
||||
Dunstan)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In MSVC builds, handle the case where the <application>openssl</>
|
||||
library is not within a <filename>VC</> subdirectory (Andrew Dunstan)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In MSVC builds, add proper include path for <application>libxml2</>
|
||||
header files (Andrew Dunstan)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This fixes a former need to move things around in standard Windows
|
||||
installations of <application>libxml2</>.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In MSVC builds, recognize a Tcl library that is
|
||||
named <filename>tcl86.lib</> (Noah Misch)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In MSVC builds, honor <literal>PROVE_FLAGS</> settings
|
||||
on <filename>vcregress.pl</>'s command line (Andrew Dunstan)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
</itemizedlist>
|
||||
|
||||
</sect2>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="release-9-4-12">
|
||||
<title>Release 9.4.12</title>
|
||||
|
||||
|
@ -1,6 +1,574 @@
|
||||
<!-- doc/src/sgml/release-9.5.sgml -->
|
||||
<!-- See header comment in release.sgml about typical markup -->
|
||||
|
||||
<sect1 id="release-9-5-8">
|
||||
<title>Release 9.5.8</title>
|
||||
|
||||
<formalpara>
|
||||
<title>Release date:</title>
|
||||
<para>2017-08-10</para>
|
||||
</formalpara>
|
||||
|
||||
<para>
|
||||
This release contains a variety of fixes from 9.5.7.
|
||||
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.8</title>
|
||||
|
||||
<para>
|
||||
A dump/restore is not required for those running 9.5.X.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
However, if you are upgrading from a version earlier than 9.5.7,
|
||||
see <xref linkend="release-9-5-7">.
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<title>Changes</title>
|
||||
|
||||
<itemizedlist>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Correct the documentation about the process for upgrading standby
|
||||
servers with <application>pg_upgrade</> (Bruce Momjian)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The previous documentation instructed users to start/stop the primary
|
||||
server after running <application>pg_upgrade</> but before syncing
|
||||
the standby servers. This sequence is unsafe.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix concurrent locking of tuple update chains (Álvaro Herrera)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
If several sessions concurrently lock a tuple update chain with
|
||||
nonconflicting lock modes using an old snapshot, and they all
|
||||
succeed, it was possible for some of them to nonetheless fail (and
|
||||
conclude there is no live tuple version) due to a race condition.
|
||||
This had consequences such as foreign-key checks failing to see a
|
||||
tuple that definitely exists but is being updated concurrently.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix potential data corruption when freezing a tuple whose XMAX is a
|
||||
multixact with exactly one still-interesting member (Teodor Sigaev)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Avoid integer overflow and ensuing crash when sorting more than one
|
||||
billion tuples in-memory (Sergey Koposov)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
On Windows, retry process creation if we fail to reserve the address
|
||||
range for our shared memory in the new process (Tom Lane, Amit
|
||||
Kapila)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This is expected to fix infrequent child-process-launch failures that
|
||||
are probably due to interference from antivirus products.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix low-probability corruption of shared predicate-lock hash table
|
||||
in Windows builds (Thomas Munro, Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Avoid logging clean closure of an SSL connection as though
|
||||
it were a connection reset (Michael Paquier)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Prevent sending SSL session tickets to clients (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This fix prevents reconnection failures with ticket-aware client-side
|
||||
SSL code.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix code for setting <xref linkend="guc-tcp-keepalives-idle"> on
|
||||
Solaris (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix statistics collector to honor inquiry messages issued just after
|
||||
a postmaster shutdown and immediate restart (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Statistics inquiries issued within half a second of the previous
|
||||
postmaster shutdown were effectively ignored.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Ensure that the statistics collector's receive buffer size is at
|
||||
least 100KB (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This reduces the risk of dropped statistics data on older platforms
|
||||
whose default receive buffer size is less than that.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix possible creation of an invalid WAL segment when a standby is
|
||||
promoted just after it processes an <literal>XLOG_SWITCH</> WAL
|
||||
record (Andres Freund)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>walsender</> to exit promptly when client requests
|
||||
shutdown (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <systemitem>SIGHUP</> and <systemitem>SIGUSR1</> handling in
|
||||
walsender processes (Petr Jelinek, Andres Freund)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Prevent walsender-triggered panics during shutdown checkpoints
|
||||
(Andres Freund, Michael Paquier)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix unnecessarily slow restarts of <application>walreceiver</>
|
||||
processes due to race condition in postmaster (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix leakage of small subtransactions spilled to disk during logical
|
||||
decoding (Andres Freund)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This resulted in temporary files consuming excessive disk space.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Reduce the work needed to build snapshots during creation of
|
||||
logical-decoding slots (Andres Freund, Petr Jelinek)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The previous algorithm was infeasibly expensive on a server with a
|
||||
lot of open transactions.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix race condition that could indefinitely delay creation of
|
||||
logical-decoding slots (Andres Freund, Petr Jelinek)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Reduce overhead in processing syscache invalidation events (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This is particularly helpful for logical decoding, which triggers
|
||||
frequent cache invalidation.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix cases where an <command>INSERT</> or <command>UPDATE</> assigns
|
||||
to more than one element of a column that is of domain-over-array
|
||||
type (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Allow window functions to be used in sub-<literal>SELECT</>s that
|
||||
are within the arguments of an aggregate function (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Move autogenerated array types out of the way during
|
||||
<command>ALTER ... RENAME</> (Vik Fearing)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Previously, we would rename a conflicting autogenerated array type
|
||||
out of the way during <command>CREATE</>; this fix extends that
|
||||
behavior to renaming operations.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix dangling pointer in <command>ALTER TABLE</> when there is a
|
||||
comment on a constraint belonging to the table (David Rowley)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Re-applying the comment to the reconstructed constraint could fail
|
||||
with a weird error message, or even crash.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Ensure that <command>ALTER USER ... SET</> accepts all the syntax
|
||||
variants that <command>ALTER ROLE ... SET</> does (Peter Eisentraut)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Properly update dependency info when changing a datatype I/O
|
||||
function's argument or return type from <type>opaque</> to the
|
||||
correct type (Heikki Linnakangas)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<command>CREATE TYPE</> updates I/O functions declared in this
|
||||
long-obsolete style, but it forgot to record a dependency on the
|
||||
type, allowing a subsequent <command>DROP TYPE</> to leave broken
|
||||
function definitions behind.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Reduce memory usage when <command>ANALYZE</> processes
|
||||
a <type>tsvector</> column (Heikki Linnakangas)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix unnecessary precision loss and sloppy rounding when multiplying
|
||||
or dividing <type>money</> values by integers or floats (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Tighten checks for whitespace in functions that parse identifiers,
|
||||
such as <function>regprocedurein()</> (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Depending on the prevailing locale, these functions could
|
||||
misinterpret fragments of multibyte characters as whitespace.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Use relevant <literal>#define</> symbols from Perl while
|
||||
compiling <application>PL/Perl</> (Ashutosh Sharma, Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This avoids portability problems, typically manifesting as
|
||||
a <quote>handshake</> mismatch during library load, when working with
|
||||
recent Perl versions.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In <application>libpq</>, reset GSS/SASL and SSPI authentication
|
||||
state properly after a failed connection attempt (Michael Paquier)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Failure to do this meant that when falling back from SSL to non-SSL
|
||||
connections, a GSS/SASL failure in the SSL attempt would always cause
|
||||
the non-SSL attempt to fail. SSPI did not fail, but it leaked memory.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In <application>psql</>, fix failure when <command>COPY FROM STDIN</>
|
||||
is ended with a keyboard EOF signal and then another <command>COPY
|
||||
FROM STDIN</> is attempted (Thomas Munro)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This misbehavior was observed on BSD-derived platforms (including
|
||||
macOS), but not on most others.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>pg_dump</> and <application>pg_restore</> to
|
||||
emit <command>REFRESH MATERIALIZED VIEW</> commands last (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This prevents errors during dump/restore when a materialized view
|
||||
refers to tables owned by a different user.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Improve <application>pg_dump</>/<application>pg_restore</>'s
|
||||
reporting of error conditions originating in <application>zlib</>
|
||||
(Vladimir Kunschikov, Álvaro Herrera)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>pg_dump</> with the <option>--clean</> option to
|
||||
drop event triggers as expected (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
It also now correctly assigns ownership of event triggers; before,
|
||||
they were restored as being owned by the superuser running the
|
||||
restore script.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>pg_dump</> to not emit invalid SQL for an empty
|
||||
operator class (Daniel Gustafsson)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>pg_dump</> output to stdout on Windows (Kuntal Ghosh)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
A compressed plain-text dump written to stdout would contain corrupt
|
||||
data due to failure to put the file descriptor into binary mode.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <function>pg_get_ruledef()</> to print correct output for
|
||||
the <literal>ON SELECT</> rule of a view whose columns have been
|
||||
renamed (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
In some corner cases, <application>pg_dump</> relies
|
||||
on <function>pg_get_ruledef()</> to dump views, so that this error
|
||||
could result in dump/reload failures.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix dumping of outer joins with empty constraints, such as the result
|
||||
of a <literal>NATURAL LEFT JOIN</> with no common columns (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix dumping of function expressions in the <literal>FROM</> clause in
|
||||
cases where the expression does not deparse into something that looks
|
||||
like a function call (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>pg_basebackup</> output to stdout on Windows
|
||||
(Haribabu Kommi)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
A backup written to stdout would contain corrupt data due to failure
|
||||
to put the file descriptor into binary mode.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>pg_rewind</> to correctly handle files exceeding 2GB
|
||||
(Kuntal Ghosh, Michael Paquier)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Ordinarily such files won't appear in <productname>PostgreSQL</> data
|
||||
directories, but they could be present in some cases.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>pg_upgrade</> to ensure that the ending WAL record
|
||||
does not have <xref linkend="guc-wal-level"> = <literal>minimum</>
|
||||
(Bruce Momjian)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This condition could prevent upgraded standby servers from
|
||||
reconnecting.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>pg_xlogdump</>'s computation of WAL record length
|
||||
(Andres Freund)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In <filename>postgres_fdw</>, re-establish connections to remote
|
||||
servers after <command>ALTER SERVER</> or <command>ALTER USER
|
||||
MAPPING</> commands (Kyotaro Horiguchi)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This ensures that option changes affecting connection parameters will
|
||||
be applied promptly.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In <filename>postgres_fdw</>, allow cancellation of remote
|
||||
transaction control commands (Robert Haas, Rafia Sabih)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This change allows us to quickly escape a wait for an unresponsive
|
||||
remote server in many more cases than previously.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Increase <literal>MAX_SYSCACHE_CALLBACKS</> to provide more room for
|
||||
extensions (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Always use <option>-fPIC</>, not <option>-fpic</>, when building
|
||||
shared libraries with gcc (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This supports larger extension libraries on platforms where it makes
|
||||
a difference.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<!--
|
||||
Author: Tom Lane <tgl@sss.pgh.pa.us>
|
||||
Branch: REL9_5_STABLE [af1f18259] 2017-08-02 15:07:20 -0400
|
||||
Branch: REL9_4_STABLE [8892170e7] 2017-08-02 15:07:20 -0400
|
||||
Branch: REL9_3_STABLE [3d9ae20e7] 2017-08-02 15:07:20 -0400
|
||||
Branch: REL9_2_STABLE [1188b9b2c] 2017-08-02 15:07:21 -0400
|
||||
-->
|
||||
<para>
|
||||
Fix unescaped-braces issue in our build scripts for Microsoft MSVC,
|
||||
to avoid a warning or error from recent Perl versions (Andrew
|
||||
Dunstan)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In MSVC builds, handle the case where the <application>openssl</>
|
||||
library is not within a <filename>VC</> subdirectory (Andrew Dunstan)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In MSVC builds, add proper include path for <application>libxml2</>
|
||||
header files (Andrew Dunstan)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This fixes a former need to move things around in standard Windows
|
||||
installations of <application>libxml2</>.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In MSVC builds, recognize a Tcl library that is
|
||||
named <filename>tcl86.lib</> (Noah Misch)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
In MSVC builds, honor <literal>PROVE_FLAGS</> settings
|
||||
on <filename>vcregress.pl</>'s command line (Andrew Dunstan)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
</itemizedlist>
|
||||
|
||||
</sect2>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="release-9-5-7">
|
||||
<title>Release 9.5.7</title>
|
||||
|
||||
|
@ -216,10 +216,8 @@ Branch: REL9_2_STABLE [439b6363d] 2017-06-26 16:17:06 -0400
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Confusion between permanent and temporary statistics file timestamps
|
||||
allowed the collector to think it had already written data satisfying
|
||||
the request, when it had not. This only affected inquiries issued
|
||||
within half a second of the previous postmaster shutdown.
|
||||
Statistics inquiries issued within half a second of the previous
|
||||
postmaster shutdown were effectively ignored.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
@ -458,11 +456,6 @@ Branch: REL9_3_STABLE [66dee28b4] 2017-06-27 17:51:11 -0400
|
||||
Allow window functions to be used in sub-<literal>SELECT</>s that
|
||||
are within the arguments of an aggregate function (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This case is perfectly valid, but it was accidentally rejected by an
|
||||
overly-aggressive error check.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
@ -556,8 +549,8 @@ Branch: REL9_6_STABLE [1f220c390] 2017-08-03 13:25:32 -0400
|
||||
But this is wrong for <command>CREATE FOREIGN TABLE</>, where there's
|
||||
no reason to suppose that the underlying table is empty, and even if
|
||||
it is it's no business of ours to decide that the constraint can be
|
||||
treated as valid going forward. Skip the <quote>optimization</> in
|
||||
that case.
|
||||
treated as valid going forward. Skip this <quote>optimization</> for
|
||||
foreign tables.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
@ -716,7 +709,7 @@ Branch: REL9_2_STABLE [07477130e] 2017-05-17 12:24:19 -0400
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This misbehavior is observed on BSD-derived platforms (including
|
||||
This misbehavior was observed on BSD-derived platforms (including
|
||||
macOS), but not on most others.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -863,7 +856,7 @@ Branch: REL9_3_STABLE [e947838ae] 2017-07-20 11:29:36 -0400
|
||||
-->
|
||||
<para>
|
||||
Fix dumping of outer joins with empty constraints, such as the result
|
||||
of a <literal>NATURAL JOIN</> with no common columns (Tom Lane)
|
||||
of a <literal>NATURAL LEFT JOIN</> with no common columns (Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
@ -994,8 +987,8 @@ Branch: REL9_4_STABLE [c02c450cf] 2017-06-07 15:40:35 -0400
|
||||
Branch: REL9_3_STABLE [fc267a0c3] 2017-06-07 15:41:05 -0400
|
||||
-->
|
||||
<para>
|
||||
In <filename>postgres_fdw</>, allow cancellation of transaction
|
||||
control commands (Robert Haas, Rafia Sabih)
|
||||
In <filename>postgres_fdw</>, allow cancellation of remote
|
||||
transaction control commands (Robert Haas, Rafia Sabih)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
@ -1041,21 +1034,6 @@ Branch: REL9_2_STABLE [a378b9bc2] 2017-06-01 13:32:56 -0400
|
||||
|
||||
<listitem>
|
||||
<!--
|
||||
Author: Tom Lane <tgl@sss.pgh.pa.us>
|
||||
Branch: REL9_5_STABLE [af1f18259] 2017-08-02 15:07:20 -0400
|
||||
Branch: REL9_4_STABLE [8892170e7] 2017-08-02 15:07:20 -0400
|
||||
Branch: REL9_3_STABLE [3d9ae20e7] 2017-08-02 15:07:20 -0400
|
||||
Branch: REL9_2_STABLE [1188b9b2c] 2017-08-02 15:07:21 -0400
|
||||
-->
|
||||
<para>
|
||||
Fix unescaped-braces issue in our build scripts for Microsoft MSVC,
|
||||
to avoid a warning or error from recent Perl versions (Andrew
|
||||
Dunstan)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<!--
|
||||
Author: Andrew Dunstan <andrew@dunslane.net>
|
||||
Branch: master [614350a3a] 2017-06-05 14:24:42 -0400
|
||||
Branch: REL9_6_STABLE [b64ff9c5a] 2017-06-05 14:27:59 -0400
|
||||
|
Loading…
x
Reference in New Issue
Block a user