|
|
|
|
@ -1,6 +1,171 @@ |
|
|
|
|
<!-- doc/src/sgml/release-9.1.sgml --> |
|
|
|
|
<!-- See header comment in release.sgml about typical markup --> |
|
|
|
|
|
|
|
|
|
<sect1 id="release-9-1-22"> |
|
|
|
|
<title>Release 9.1.22</title> |
|
|
|
|
|
|
|
|
|
<note> |
|
|
|
|
<title>Release Date</title> |
|
|
|
|
<simpara>2016-05-12</simpara> |
|
|
|
|
</note> |
|
|
|
|
|
|
|
|
|
<para> |
|
|
|
|
This release contains a variety of fixes from 9.1.21. |
|
|
|
|
For information about new features in the 9.1 major release, see |
|
|
|
|
<xref linkend="release-9-1">. |
|
|
|
|
</para> |
|
|
|
|
|
|
|
|
|
<para> |
|
|
|
|
The <productname>PostgreSQL</> community will stop releasing updates |
|
|
|
|
for the 9.1.X release series in September 2016. |
|
|
|
|
Users are encouraged to update to a newer release branch soon. |
|
|
|
|
</para> |
|
|
|
|
|
|
|
|
|
<sect2> |
|
|
|
|
<title>Migration to Version 9.1.22</title> |
|
|
|
|
|
|
|
|
|
<para> |
|
|
|
|
A dump/restore is not required for those running 9.1.X. |
|
|
|
|
</para> |
|
|
|
|
|
|
|
|
|
<para> |
|
|
|
|
However, if you are upgrading from a version earlier than 9.1.16, |
|
|
|
|
see <xref linkend="release-9-1-16">. |
|
|
|
|
</para> |
|
|
|
|
|
|
|
|
|
</sect2> |
|
|
|
|
|
|
|
|
|
<sect2> |
|
|
|
|
<title>Changes</title> |
|
|
|
|
|
|
|
|
|
<itemizedlist> |
|
|
|
|
|
|
|
|
|
<listitem> |
|
|
|
|
<para> |
|
|
|
|
Clear the OpenSSL error queue before OpenSSL calls, rather than |
|
|
|
|
assuming it's clear already; and make sure we leave it clear |
|
|
|
|
afterwards (Peter Geoghegan, Dave Vitek, Peter Eisentraut) |
|
|
|
|
</para> |
|
|
|
|
|
|
|
|
|
<para> |
|
|
|
|
This change prevents problems when there are multiple connections |
|
|
|
|
using OpenSSL within a single process and not all the code involved |
|
|
|
|
follows the same rules for when to clear the error queue. |
|
|
|
|
Failures have been reported specifically when a client application |
|
|
|
|
uses SSL connections in <application>libpq</> concurrently with |
|
|
|
|
SSL connections using the PHP, Python, or Ruby wrappers for OpenSSL. |
|
|
|
|
It's possible for similar problems to arise within the server as well, |
|
|
|
|
if an extension module establishes an outgoing SSL connection. |
|
|
|
|
</para> |
|
|
|
|
</listitem> |
|
|
|
|
|
|
|
|
|
<listitem> |
|
|
|
|
<para> |
|
|
|
|
Fix <quote>failed to build any <replaceable>N</>-way joins</quote> |
|
|
|
|
planner error with a full join enclosed in the right-hand side of a |
|
|
|
|
left join (Tom Lane) |
|
|
|
|
</para> |
|
|
|
|
</listitem> |
|
|
|
|
|
|
|
|
|
<listitem> |
|
|
|
|
<para> |
|
|
|
|
Fix possible misbehavior of <literal>TH</>, <literal>th</>, |
|
|
|
|
and <literal>Y,YYY</> format codes in <function>to_timestamp()</> |
|
|
|
|
(Tom Lane) |
|
|
|
|
</para> |
|
|
|
|
|
|
|
|
|
<para> |
|
|
|
|
These could advance off the end of the input string, causing subsequent |
|
|
|
|
format codes to read garbage. |
|
|
|
|
</para> |
|
|
|
|
</listitem> |
|
|
|
|
|
|
|
|
|
<listitem> |
|
|
|
|
<para> |
|
|
|
|
Fix dumping of rules and views in which the <replaceable>array</> |
|
|
|
|
argument of a <literal><replaceable>value</> <replaceable>operator</> |
|
|
|
|
ANY (<replaceable>array</>)</literal> construct is a sub-SELECT |
|
|
|
|
(Tom Lane) |
|
|
|
|
</para> |
|
|
|
|
</listitem> |
|
|
|
|
|
|
|
|
|
<listitem> |
|
|
|
|
<para> |
|
|
|
|
Make <application>pg_regress</> use a startup timeout from the |
|
|
|
|
<envar>PGCTLTIMEOUT</> environment variable, if that's set (Tom Lane) |
|
|
|
|
</para> |
|
|
|
|
|
|
|
|
|
<para> |
|
|
|
|
This is for consistency with a behavior recently added |
|
|
|
|
to <application>pg_ctl</>; it eases automated testing on slow machines. |
|
|
|
|
</para> |
|
|
|
|
</listitem> |
|
|
|
|
|
|
|
|
|
<listitem> |
|
|
|
|
<para> |
|
|
|
|
Fix <application>pg_upgrade</> to correctly restore extension |
|
|
|
|
membership for operator families containing only one operator class |
|
|
|
|
(Tom Lane) |
|
|
|
|
</para> |
|
|
|
|
|
|
|
|
|
<para> |
|
|
|
|
In such a case, the operator family was restored into the new database, |
|
|
|
|
but it was no longer marked as part of the extension. This had no |
|
|
|
|
immediate ill effects, but would cause later <application>pg_dump</> |
|
|
|
|
runs to emit output that would cause (harmless) errors on restore. |
|
|
|
|
</para> |
|
|
|
|
</listitem> |
|
|
|
|
|
|
|
|
|
<listitem> |
|
|
|
|
<para> |
|
|
|
|
Rename internal function <function>strtoi()</> |
|
|
|
|
to <function>strtoint()</> to avoid conflict with a NetBSD library |
|
|
|
|
function (Thomas Munro) |
|
|
|
|
</para> |
|
|
|
|
</listitem> |
|
|
|
|
|
|
|
|
|
<listitem> |
|
|
|
|
<para> |
|
|
|
|
Fix reporting of errors from <function>bind()</> |
|
|
|
|
and <function>listen()</> system calls on Windows (Tom Lane) |
|
|
|
|
</para> |
|
|
|
|
</listitem> |
|
|
|
|
|
|
|
|
|
<listitem> |
|
|
|
|
<para> |
|
|
|
|
Reduce verbosity of compiler output when building with Microsoft Visual |
|
|
|
|
Studio (Christian Ullrich) |
|
|
|
|
</para> |
|
|
|
|
</listitem> |
|
|
|
|
|
|
|
|
|
<listitem> |
|
|
|
|
<para> |
|
|
|
|
Avoid possibly-unsafe use of Windows' <function>FormatMessage()</> |
|
|
|
|
function (Christian Ullrich) |
|
|
|
|
</para> |
|
|
|
|
|
|
|
|
|
<para> |
|
|
|
|
Use the <literal>FORMAT_MESSAGE_IGNORE_INSERTS</> flag where |
|
|
|
|
appropriate. No live bug is known to exist here, but it seems like a |
|
|
|
|
good idea to be careful. |
|
|
|
|
</para> |
|
|
|
|
</listitem> |
|
|
|
|
|
|
|
|
|
<listitem> |
|
|
|
|
<para> |
|
|
|
|
Update time zone data files to <application>tzdata</> release 2016d |
|
|
|
|
for DST law changes in Russia and Venezuela. There are new zone |
|
|
|
|
names <literal>Europe/Kirov</> and <literal>Asia/Tomsk</> to reflect |
|
|
|
|
the fact that these regions now have different time zone histories from |
|
|
|
|
adjacent regions. |
|
|
|
|
</para> |
|
|
|
|
</listitem> |
|
|
|
|
|
|
|
|
|
</itemizedlist> |
|
|
|
|
|
|
|
|
|
</sect2> |
|
|
|
|
</sect1> |
|
|
|
|
|
|
|
|
|
<sect1 id="release-9-1-21"> |
|
|
|
|
<title>Release 9.1.21</title> |
|
|
|
|
|
|
|
|
|
|