Update release notes for 9.1.1, 9.0.5, 8.4.9, 8.3.16, 8.2.22.

Man, we fixed a lotta bugs since April.
This commit is contained in:
Tom Lane 2011-09-22 17:39:19 -04:00
parent f992679318
commit 7f70f35031
5 changed files with 1929 additions and 0 deletions

View File

@ -1,6 +1,313 @@
<!-- doc/src/sgml/release-8.2.sgml -->
<!-- See header comment in release.sgml about typical markup -->
<sect1 id="release-8-2-22">
<title>Release 8.2.22</title>
<note>
<title>Release Date</title>
<simpara>2011-09-26</simpara>
</note>
<para>
This release contains a variety of fixes from 8.2.21.
For information about new features in the 8.2 major release, see
<xref linkend="release-8-2">.
</para>
<para>
The <productname>PostgreSQL</> community will stop releasing updates
for the 8.2.X release series in December 2011.
Users are encouraged to update to a newer release branch soon.
</para>
<sect2>
<title>Migration to Version 8.2.22</title>
<para>
A dump/restore is not required for those running 8.2.X.
However, if you are upgrading from a version earlier than 8.2.14,
see the release notes for 8.2.14.
</para>
</sect2>
<sect2>
<title>Changes</title>
<itemizedlist>
<listitem>
<para>
Fix multiple bugs in GiST index page split processing (Heikki
Linnakangas)
</para>
<para>
The probability of occurrence was low, but these could lead to index
corruption.
</para>
</listitem>
<listitem>
<para>
Avoid possibly accessing off the end of memory in <command>ANALYZE</>
(Noah Misch)
</para>
<para>
This fixes a very-low-probability server crash scenario.
</para>
</listitem>
<listitem>
<para>
Fix race condition in relcache init file invalidation (Tom Lane)
</para>
<para>
There was a window wherein a new backend process could read a stale init
file but miss the inval messages that would tell it the data is stale.
The result would be bizarre failures in catalog accesses, typically
<quote>could not read block 0 in file ...</> later during startup.
</para>
</listitem>
<listitem>
<para>
Fix memory leak at end of a GiST index scan (Tom Lane)
</para>
<para>
Commands that perform many separate GiST index scans, such as
verification of a new GiST-based exclusion constraint on a table
already containing many rows, could transiently require large amounts of
memory due to this leak.
</para>
</listitem>
<listitem>
<para>
Fix performance problem when constructing a large, lossy bitmap
(Tom Lane)
</para>
</listitem>
<listitem>
<para>
Fix array- and path-creating functions to ensure padding bytes are
zeroes (Tom Lane)
</para>
<para>
This avoids some situations where the planner will think that
semantically-equal constants are not equal, resulting in poor
optimization.
</para>
</listitem>
<listitem>
<para>
Work around gcc 4.6.0 bug that breaks WAL replay (Tom Lane)
</para>
<para>
This could lead to loss of committed transactions after a server crash.
</para>
</listitem>
<listitem>
<para>
Fix dump bug for <literal>VALUES</> in a view (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Disallow <literal>SELECT FOR UPDATE/SHARE</> on sequences (Tom Lane)
</para>
<para>
This operation doesn't work as expected and can lead to failures.
</para>
</listitem>
<listitem>
<para>
Defend against integer overflow when computing size of a hash table (Tom
Lane)
</para>
</listitem>
<listitem>
<para>
Fix portability bugs in use of credentials control messages for
<quote>peer</> authentication (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Fix typo in <function>pg_srand48</> seed initialization (Andres Freund)
</para>
<para>
This led to failure to use all bits of the provided seed. This function
is not used on most platforms (only those without <function>srandom</>),
and the potential security exposure from a less-random-than-expected
seed seems minimal in any case.
</para>
</listitem>
<listitem>
<para>
Avoid integer overflow when the sum of <literal>LIMIT</> and
<literal>OFFSET</> values exceeds 2^63 (Heikki Linnakangas)
</para>
</listitem>
<listitem>
<para>
Add overflow checks to <type>int4</> and <type>int8</> versions of
<function>generate_series()</> (Robert Haas)
</para>
</listitem>
<listitem>
<para>
Fix trailing-zero removal in <function>to_char()</> (Marti Raudsepp)
</para>
<para>
In a format with <literal>FM</> and no digit positions
after the decimal point, zeroes to the left of the decimal point could
be removed incorrectly.
</para>
</listitem>
<listitem>
<para>
Fix <function>pg_size_pretty()</> to avoid overflow for inputs close to
2^63 (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Fix <application>psql</>'s counting of script file line numbers during
<literal>COPY</> from a different file (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Fix <application>pg_restore</>'s direct-to-database mode for
<varname>standard_conforming_strings</> (Tom Lane)
</para>
<para>
<application>pg_restore</> could emit incorrect commands when restoring
directly to a database server from an archive file that had been made
with <varname>standard_conforming_strings</> set to <literal>on</>.
</para>
</listitem>
<listitem>
<para>
Fix write-past-buffer-end and memory leak in <application>libpq</>'s
LDAP service lookup code (Albe Laurenz)
</para>
</listitem>
<listitem>
<para>
In <application>libpq</>, avoid failures when using nonblocking I/O
and an SSL connection (Martin Pihlak, Tom Lane)
</para>
</listitem>
<listitem>
<para>
Improve libpq's handling of failures during connection startup
(Tom Lane)
</para>
<para>
In particular, the response to a server report of <function>fork()</>
failure during SSL connection startup is now saner.
</para>
</listitem>
<listitem>
<para>
Make <application>ecpglib</> write <type>double</> values with 15 digits
precision (Akira Kurosawa)
</para>
</listitem>
<listitem>
<para>
Apply upstream fix for blowfish signed-character bug (CVE-2011-2483)
(Tom Lane)
</para>
<para>
<filename>contrib/pg_crypto</>'s blowfish encryption code could give
wrong results on platforms where char is signed (which is most),
leading to encrypted passwords being weaker than they should be.
</para>
</listitem>
<listitem>
<para>
Fix memory leak in <filename>contrib/seg</> (Heikki Linnakangas)
</para>
</listitem>
<listitem>
<para>
Fix <function>pgstatindex()</> to give consistent results for empty
indexes (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Allow building with perl 5.14 (Alex Hunsaker)
</para>
</listitem>
<listitem>
<para>
Update configure script's method for probing existence of system
functions (Tom Lane)
</para>
<para>
The version of autoconf we used in 8.3 and 8.2 could be fooled by
compilers that perform link-time optimization.
</para>
</listitem>
<listitem>
<para>
Fix assorted issues with build and install file paths containing spaces
(Tom Lane)
</para>
</listitem>
<listitem>
<para>
Update time zone data files to <application>tzdata</> release 2011i
for DST law changes in Canada, Egypt, Russia, Samoa, and South Sudan.
</para>
</listitem>
</itemizedlist>
</sect2>
</sect1>
<sect1 id="release-8-2-21">
<title>Release 8.2.21</title>

View File

@ -1,6 +1,377 @@
<!-- doc/src/sgml/release-8.3.sgml -->
<!-- See header comment in release.sgml about typical markup -->
<sect1 id="release-8-3-16">
<title>Release 8.3.16</title>
<note>
<title>Release Date</title>
<simpara>2011-09-26</simpara>
</note>
<para>
This release contains a variety of fixes from 8.3.15.
For information about new features in the 8.3 major release, see
<xref linkend="release-8-3">.
</para>
<sect2>
<title>Migration to Version 8.3.16</title>
<para>
A dump/restore is not required for those running 8.3.X.
However, if you are upgrading from a version earlier than 8.3.8,
see the release notes for 8.3.8.
</para>
</sect2>
<sect2>
<title>Changes</title>
<itemizedlist>
<listitem>
<para>
Fix bugs in indexing of in-doubt HOT-updated tuples (Tom Lane)
</para>
<para>
These bugs could result in index corruption after reindexing a system
catalog. They are not believed to affect user indexes.
</para>
</listitem>
<listitem>
<para>
Fix multiple bugs in GiST index page split processing (Heikki
Linnakangas)
</para>
<para>
The probability of occurrence was low, but these could lead to index
corruption.
</para>
</listitem>
<listitem>
<para>
Fix possible buffer overrun in <function>tsvector_concat()</>
(Tom Lane)
</para>
<para>
The function could underestimate the amount of memory needed for its
result, leading to server crashes.
</para>
</listitem>
<listitem>
<para>
Fix crash in <function>xml_recv</> when processing a
<quote>standalone</> parameter (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Avoid possibly accessing off the end of memory in <command>ANALYZE</>
and in SJIS-2004 encoding conversion (Noah Misch)
</para>
<para>
This fixes some very-low-probability server crash scenarios.
</para>
</listitem>
<listitem>
<para>
Fix race condition in relcache init file invalidation (Tom Lane)
</para>
<para>
There was a window wherein a new backend process could read a stale init
file but miss the inval messages that would tell it the data is stale.
The result would be bizarre failures in catalog accesses, typically
<quote>could not read block 0 in file ...</> later during startup.
</para>
</listitem>
<listitem>
<para>
Fix memory leak at end of a GiST index scan (Tom Lane)
</para>
<para>
Commands that perform many separate GiST index scans, such as
verification of a new GiST-based exclusion constraint on a table
already containing many rows, could transiently require large amounts of
memory due to this leak.
</para>
</listitem>
<listitem>
<para>
Fix performance problem when constructing a large, lossy bitmap
(Tom Lane)
</para>
</listitem>
<listitem>
<para>
Fix array- and path-creating functions to ensure padding bytes are
zeroes (Tom Lane)
</para>
<para>
This avoids some situations where the planner will think that
semantically-equal constants are not equal, resulting in poor
optimization.
</para>
</listitem>
<listitem>
<para>
Work around gcc 4.6.0 bug that breaks WAL replay (Tom Lane)
</para>
<para>
This could lead to loss of committed transactions after a server crash.
</para>
</listitem>
<listitem>
<para>
Fix dump bug for <literal>VALUES</> in a view (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Disallow <literal>SELECT FOR UPDATE/SHARE</> on sequences (Tom Lane)
</para>
<para>
This operation doesn't work as expected and can lead to failures.
</para>
</listitem>
<listitem>
<para>
Defend against integer overflow when computing size of a hash table (Tom
Lane)
</para>
</listitem>
<listitem>
<para>
Fix cases where <command>CLUSTER</> might attempt to access
already-removed TOAST data (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Fix portability bugs in use of credentials control messages for
<quote>peer</> authentication (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Fix SSPI login when multiple roundtrips are required (Ahmed Shinwari,
Magnus Hagander)
</para>
<para>
The typical symptom of this problem was <quote>The function requested is
not supported</> errors during SSPI login.
</para>
</listitem>
<listitem>
<para>
Fix typo in <function>pg_srand48</> seed initialization (Andres Freund)
</para>
<para>
This led to failure to use all bits of the provided seed. This function
is not used on most platforms (only those without <function>srandom</>),
and the potential security exposure from a less-random-than-expected
seed seems minimal in any case.
</para>
</listitem>
<listitem>
<para>
Avoid integer overflow when the sum of <literal>LIMIT</> and
<literal>OFFSET</> values exceeds 2^63 (Heikki Linnakangas)
</para>
</listitem>
<listitem>
<para>
Add overflow checks to <type>int4</> and <type>int8</> versions of
<function>generate_series()</> (Robert Haas)
</para>
</listitem>
<listitem>
<para>
Fix trailing-zero removal in <function>to_char()</> (Marti Raudsepp)
</para>
<para>
In a format with <literal>FM</> and no digit positions
after the decimal point, zeroes to the left of the decimal point could
be removed incorrectly.
</para>
</listitem>
<listitem>
<para>
Fix <function>pg_size_pretty()</> to avoid overflow for inputs close to
2^63 (Tom Lane)
</para>
</listitem>
<listitem>
<para>
In <application>pg_ctl</>, support silent mode for service registrations
on Windows (MauMau)
</para>
</listitem>
<listitem>
<para>
Fix <application>psql</>'s counting of script file line numbers during
<literal>COPY</> from a different file (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Fix <application>pg_restore</>'s direct-to-database mode for
<varname>standard_conforming_strings</> (Tom Lane)
</para>
<para>
<application>pg_restore</> could emit incorrect commands when restoring
directly to a database server from an archive file that had been made
with <varname>standard_conforming_strings</> set to <literal>on</>.
</para>
</listitem>
<listitem>
<para>
Fix write-past-buffer-end and memory leak in <application>libpq</>'s
LDAP service lookup code (Albe Laurenz)
</para>
</listitem>
<listitem>
<para>
In <application>libpq</>, avoid failures when using nonblocking I/O
and an SSL connection (Martin Pihlak, Tom Lane)
</para>
</listitem>
<listitem>
<para>
Improve libpq's handling of failures during connection startup
(Tom Lane)
</para>
<para>
In particular, the response to a server report of <function>fork()</>
failure during SSL connection startup is now saner.
</para>
</listitem>
<listitem>
<para>
Improve <application>libpq</>'s error reporting for SSL failures (Tom
Lane)
</para>
</listitem>
<listitem>
<para>
Make <application>ecpglib</> write <type>double</> values with 15 digits
precision (Akira Kurosawa)
</para>
</listitem>
<listitem>
<para>
In <application>ecpglib</>, be sure <literal>LC_NUMERIC</> setting is
restored after an error (Michael Meskes)
</para>
</listitem>
<listitem>
<para>
Apply upstream fix for blowfish signed-character bug (CVE-2011-2483)
(Tom Lane)
</para>
<para>
<filename>contrib/pg_crypto</>'s blowfish encryption code could give
wrong results on platforms where char is signed (which is most),
leading to encrypted passwords being weaker than they should be.
</para>
</listitem>
<listitem>
<para>
Fix memory leak in <filename>contrib/seg</> (Heikki Linnakangas)
</para>
</listitem>
<listitem>
<para>
Fix <function>pgstatindex()</> to give consistent results for empty
indexes (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Allow building with perl 5.14 (Alex Hunsaker)
</para>
</listitem>
<listitem>
<para>
Update configure script's method for probing existence of system
functions (Tom Lane)
</para>
<para>
The version of autoconf we used in 8.3 and 8.2 could be fooled by
compilers that perform link-time optimization.
</para>
</listitem>
<listitem>
<para>
Fix assorted issues with build and install file paths containing spaces
(Tom Lane)
</para>
</listitem>
<listitem>
<para>
Update time zone data files to <application>tzdata</> release 2011i
for DST law changes in Canada, Egypt, Russia, Samoa, and South Sudan.
</para>
</listitem>
</itemizedlist>
</sect2>
</sect1>
<sect1 id="release-8-3-15">
<title>Release 8.3.15</title>

View File

@ -1,6 +1,531 @@
<!-- doc/src/sgml/release-8.4.sgml -->
<!-- See header comment in release.sgml about typical markup -->
<sect1 id="release-8-4-9">
<title>Release 8.4.9</title>
<note>
<title>Release Date</title>
<simpara>2011-09-26</simpara>
</note>
<para>
This release contains a variety of fixes from 8.4.8.
For information about new features in the 8.4 major release, see
<xref linkend="release-8-4">.
</para>
<sect2>
<title>Migration to Version 8.4.9</title>
<para>
A dump/restore is not required for those running 8.4.X.
</para>
<para>
However, if you are upgrading from a version earlier than 8.4.8,
see the release notes for 8.4.8.
</para>
</sect2>
<sect2>
<title>Changes</title>
<itemizedlist>
<listitem>
<para>
Fix bugs in indexing of in-doubt HOT-updated tuples (Tom Lane)
</para>
<para>
These bugs could result in index corruption after reindexing a system
catalog. They are not believed to affect user indexes.
</para>
</listitem>
<listitem>
<para>
Fix multiple bugs in GiST index page split processing (Heikki
Linnakangas)
</para>
<para>
The probability of occurrence was low, but these could lead to index
corruption.
</para>
</listitem>
<listitem>
<para>
Fix possible buffer overrun in <function>tsvector_concat()</>
(Tom Lane)
</para>
<para>
The function could underestimate the amount of memory needed for its
result, leading to server crashes.
</para>
</listitem>
<listitem>
<para>
Fix crash in <function>xml_recv</> when processing a
<quote>standalone</> parameter (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Make <function>pg_options_to_table</> return NULL for an option with no
value (Tom Lane)
</para>
<para>
Previously such cases would result in a server crash.
</para>
</listitem>
<listitem>
<para>
Avoid possibly accessing off the end of memory in <command>ANALYZE</>
and in SJIS-2004 encoding conversion (Noah Misch)
</para>
<para>
This fixes some very-low-probability server crash scenarios.
</para>
</listitem>
<listitem>
<para>
Prevent intermittent hang in interactions of startup process with
bgwriter process (Simon Riggs)
</para>
<para>
This affected recovery in non-hot-standby cases.
</para>
</listitem>
<listitem>
<para>
Fix race condition in relcache init file invalidation (Tom Lane)
</para>
<para>
There was a window wherein a new backend process could read a stale init
file but miss the inval messages that would tell it the data is stale.
The result would be bizarre failures in catalog accesses, typically
<quote>could not read block 0 in file ...</> later during startup.
</para>
</listitem>
<listitem>
<para>
Fix memory leak at end of a GiST index scan (Tom Lane)
</para>
<para>
Commands that perform many separate GiST index scans, such as
verification of a new GiST-based exclusion constraint on a table
already containing many rows, could transiently require large amounts of
memory due to this leak.
</para>
</listitem>
<listitem>
<para>
Fix incorrect memory accounting (leading to possible memory bloat) in
tuplestores supporting holdable cursors and plpgsql's <literal>RETURN
NEXT</> command (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Fix performance problem when constructing a large, lossy bitmap
(Tom Lane)
</para>
</listitem>
<listitem>
<para>
Fix join selectivity estimation for unique columns (Tom Lane)
</para>
<para>
This fixes an erroneous planner heuristic that could lead to poor
estimates of the result size of a join.
</para>
</listitem>
<listitem>
<para>
Fix nested PlaceHolderVar expressions that appear only in sub-select
target lists (Tom Lane)
</para>
<para>
This mistake could result in outputs of an outer join incorrectly
appearing as NULL.
</para>
</listitem>
<listitem>
<para>
Allow nested <literal>EXISTS</> queries to be optimized properly (Tom
Lane)
</para>
</listitem>
<listitem>
<para>
Fix array- and path-creating functions to ensure padding bytes are
zeroes (Tom Lane)
</para>
<para>
This avoids some situations where the planner will think that
semantically-equal constants are not equal, resulting in poor
optimization.
</para>
</listitem>
<listitem>
<para>
Fix <command>EXPLAIN</> to handle gating Result nodes within
inner-indexscan subplans (Tom Lane)
</para>
<para>
The usual symptom of this oversight was <quote>bogus varno</> errors.
</para>
</listitem>
<listitem>
<para>
Work around gcc 4.6.0 bug that breaks WAL replay (Tom Lane)
</para>
<para>
This could lead to loss of committed transactions after a server crash.
</para>
</listitem>
<listitem>
<para>
Fix dump bug for <literal>VALUES</> in a view (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Disallow <literal>SELECT FOR UPDATE/SHARE</> on sequences (Tom Lane)
</para>
<para>
This operation doesn't work as expected and can lead to failures.
</para>
</listitem>
<listitem>
<para>
Fix <command>VACUUM</> so that it always updates
<literal>pg_class</>.<literal>reltuples</>/<literal>relpages</> (Tom
Lane)
</para>
<para>
This fixes some scenarios where autovacuum could make increasingly poor
decisions about when to vacuum tables.
</para>
</listitem>
<listitem>
<para>
Defend against integer overflow when computing size of a hash table (Tom
Lane)
</para>
</listitem>
<listitem>
<para>
Fix cases where <command>CLUSTER</> might attempt to access
already-removed TOAST data (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Fix portability bugs in use of credentials control messages for
<quote>peer</> authentication (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Fix SSPI login when multiple roundtrips are required (Ahmed Shinwari,
Magnus Hagander)
</para>
<para>
The typical symptom of this problem was <quote>The function requested is
not supported</> errors during SSPI login.
</para>
</listitem>
<listitem>
<para>
Throw an error if <filename>pg_hba.conf</> contains <literal>hostssl</>
but SSL is disabled (Tom Lane)
</para>
<para>
This was concluded to be more user-friendly than the previous behavior
of silently ignoring such lines.
</para>
</listitem>
<listitem>
<para>
Fix typo in <function>pg_srand48</> seed initialization (Andres Freund)
</para>
<para>
This led to failure to use all bits of the provided seed. This function
is not used on most platforms (only those without <function>srandom</>),
and the potential security exposure from a less-random-than-expected
seed seems minimal in any case.
</para>
</listitem>
<listitem>
<para>
Avoid integer overflow when the sum of <literal>LIMIT</> and
<literal>OFFSET</> values exceeds 2^63 (Heikki Linnakangas)
</para>
</listitem>
<listitem>
<para>
Add overflow checks to <type>int4</> and <type>int8</> versions of
<function>generate_series()</> (Robert Haas)
</para>
</listitem>
<listitem>
<para>
Fix trailing-zero removal in <function>to_char()</> (Marti Raudsepp)
</para>
<para>
In a format with <literal>FM</> and no digit positions
after the decimal point, zeroes to the left of the decimal point could
be removed incorrectly.
</para>
</listitem>
<listitem>
<para>
Fix <function>pg_size_pretty()</> to avoid overflow for inputs close to
2^63 (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Weaken plpgsql's check for typmod matching in record values (Tom Lane)
</para>
<para>
An overly enthusiastic check could lead to discarding length modifiers
that should have been kept.
</para>
</listitem>
<listitem>
<para>
Correctly handle quotes in locale names during <application>initdb</>
(Heikki Linnakangas)
</para>
<para>
The case can arise with some Windows locales, such as <quote>People's
Republic of China</>.
</para>
</listitem>
<listitem>
<para>
Fix <application>pg_upgrade</> to preserve toast tables' relfrozenxids
during an upgrade from 8.3 (Bruce Momjian)
</para>
<para>
Failure to do this could lead to <filename>pg_clog</> files being
removed too soon after the upgrade.
</para>
</listitem>
<listitem>
<para>
In <application>pg_ctl</>, support silent mode for service registrations
on Windows (MauMau)
</para>
</listitem>
<listitem>
<para>
Fix <application>psql</>'s counting of script file line numbers during
<literal>COPY</> from a different file (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Fix <application>pg_restore</>'s direct-to-database mode for
<varname>standard_conforming_strings</> (Tom Lane)
</para>
<para>
<application>pg_restore</> could emit incorrect commands when restoring
directly to a database server from an archive file that had been made
with <varname>standard_conforming_strings</> set to <literal>on</>.
</para>
</listitem>
<listitem>
<para>
Be more user-friendly about unsupported cases for parallel
<application>pg_restore</> (Tom Lane)
</para>
<para>
This change ensures that such cases are detected and reported before
any restore actions have been taken.
</para>
</listitem>
<listitem>
<para>
Fix write-past-buffer-end and memory leak in <application>libpq</>'s
LDAP service lookup code (Albe Laurenz)
</para>
</listitem>
<listitem>
<para>
In <application>libpq</>, avoid failures when using nonblocking I/O
and an SSL connection (Martin Pihlak, Tom Lane)
</para>
</listitem>
<listitem>
<para>
Improve libpq's handling of failures during connection startup
(Tom Lane)
</para>
<para>
In particular, the response to a server report of <function>fork()</>
failure during SSL connection startup is now saner.
</para>
</listitem>
<listitem>
<para>
Improve <application>libpq</>'s error reporting for SSL failures (Tom
Lane)
</para>
</listitem>
<listitem>
<para>
Fix <function>PQsetvalue()</> to avoid possible crash when adding a new
tuple to a <structname>PGresult</> originally obtained from a server
query (Andrew Chernow)
</para>
</listitem>
<listitem>
<para>
Make <application>ecpglib</> write <type>double</> values with 15 digits
precision (Akira Kurosawa)
</para>
</listitem>
<listitem>
<para>
In <application>ecpglib</>, be sure <literal>LC_NUMERIC</> setting is
restored after an error (Michael Meskes)
</para>
</listitem>
<listitem>
<para>
Apply upstream fix for blowfish signed-character bug (CVE-2011-2483)
(Tom Lane)
</para>
<para>
<filename>contrib/pg_crypto</>'s blowfish encryption code could give
wrong results on platforms where char is signed (which is most),
leading to encrypted passwords being weaker than they should be.
</para>
</listitem>
<listitem>
<para>
Fix memory leak in <filename>contrib/seg</> (Heikki Linnakangas)
</para>
</listitem>
<listitem>
<para>
Fix <function>pgstatindex()</> to give consistent results for empty
indexes (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Allow building with perl 5.14 (Alex Hunsaker)
</para>
</listitem>
<listitem>
<para>
Update configure script's method for probing existence of system
functions (Tom Lane)
</para>
<para>
The version of autoconf we used in 8.3 and 8.2 could be fooled by
compilers that perform link-time optimization.
</para>
</listitem>
<listitem>
<para>
Fix assorted issues with build and install file paths containing spaces
(Tom Lane)
</para>
</listitem>
<listitem>
<para>
Update time zone data files to <application>tzdata</> release 2011i
for DST law changes in Canada, Egypt, Russia, Samoa, and South Sudan.
</para>
</listitem>
</itemizedlist>
</sect2>
</sect1>
<sect1 id="release-8-4-8">
<title>Release 8.4.8</title>

View File

@ -1,6 +1,656 @@
<!-- doc/src/sgml/release-9.0.sgml -->
<!-- See header comment in release.sgml about typical markup -->
<sect1 id="release-9-0-5">
<title>Release 9.0.5</title>
<note>
<title>Release Date</title>
<simpara>2011-09-26</simpara>
</note>
<para>
This release contains a variety of fixes from 9.0.4.
For information about new features in the 9.0 major release, see
<xref linkend="release-9-0">.
</para>
<sect2>
<title>Migration to Version 9.0.5</title>
<para>
A dump/restore is not required for those running 9.0.X.
</para>
<para>
However, if you are upgrading from a version earlier than 9.0.4,
see the release notes for 9.0.4.
</para>
</sect2>
<sect2>
<title>Changes</title>
<itemizedlist>
<listitem>
<para>
Fix catalog cache invalidation after a <command>VACUUM FULL</> or
<command>CLUSTER</> on a system catalog (Tom Lane)
</para>
<para>
In some cases the relocation of a system catalog row to another place
would not be recognized by concurrent server processes, allowing catalog
corruption to occur if they then tried to update that row. The
worst-case outcome could be as bad as complete loss of a table.
</para>
</listitem>
<listitem>
<para>
Fix incorrect order of operations during sinval reset processing,
and ensure that TOAST OIDs are preserved in system catalogs (Tom
Lane)
</para>
<para>
These mistakes could lead to transient failures after a <command>VACUUM
FULL</> or <command>CLUSTER</> on a system catalog.
</para>
</listitem>
<listitem>
<para>
Fix bugs in indexing of in-doubt HOT-updated tuples (Tom Lane)
</para>
<para>
These bugs could result in index corruption after reindexing a system
catalog. They are not believed to affect user indexes.
</para>
</listitem>
<listitem>
<para>
Fix multiple bugs in GiST index page split processing (Heikki
Linnakangas)
</para>
<para>
The probability of occurrence was low, but these could lead to index
corruption.
</para>
</listitem>
<listitem>
<para>
Fix possible buffer overrun in <function>tsvector_concat()</>
(Tom Lane)
</para>
<para>
The function could underestimate the amount of memory needed for its
result, leading to server crashes.
</para>
</listitem>
<listitem>
<para>
Fix crash in <function>xml_recv</> when processing a
<quote>standalone</> parameter (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Make <function>pg_options_to_table</> return NULL for an option with no
value (Tom Lane)
</para>
<para>
Previously such cases would result in a server crash.
</para>
</listitem>
<listitem>
<para>
Avoid possibly accessing off the end of memory in <command>ANALYZE</>
and in SJIS-2004 encoding conversion (Noah Misch)
</para>
<para>
This fixes some very-low-probability server crash scenarios.
</para>
</listitem>
<listitem>
<para>
Protect <function>pg_stat_reset_shared()</> against NULL input (Magnus
Hagander)
</para>
</listitem>
<listitem>
<para>
Fix possible failure when a recovery conflict deadlock is detected
within a sub-transaction (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Avoid spurious conflicts while recycling btree index pages during hot
standby (Noah Misch, Simon Riggs)
</para>
</listitem>
<listitem>
<para>
Shut down WAL receiver if it's still running at end of recovery (Heikki
Linnakangas)
</para>
<para>
The postmaster formerly panicked in this situation, but it's actually a
legitimate case.
</para>
</listitem>
<listitem>
<para>
Fix race condition in relcache init file invalidation (Tom Lane)
</para>
<para>
There was a window wherein a new backend process could read a stale init
file but miss the inval messages that would tell it the data is stale.
The result would be bizarre failures in catalog accesses, typically
<quote>could not read block 0 in file ...</> later during startup.
</para>
</listitem>
<listitem>
<para>
Fix memory leak at end of a GiST index scan (Tom Lane)
</para>
<para>
Commands that perform many separate GiST index scans, such as
verification of a new GiST-based exclusion constraint on a table
already containing many rows, could transiently require large amounts of
memory due to this leak.
</para>
</listitem>
<listitem>
<para>
Fix memory leak when encoding conversion has to be done on incoming
command strings and <command>LISTEN</> is active (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Fix incorrect memory accounting (leading to possible memory bloat) in
tuplestores supporting holdable cursors and plpgsql's <literal>RETURN
NEXT</> command (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Fix trigger <literal>WHEN</> conditions when both <literal>BEFORE</> and
<literal>AFTER</> triggers exist (Tom Lane)
</para>
<para>
Evaluation of <literal>WHEN</> conditions for <literal>AFTER ROW
UPDATE</> triggers could crash if there had been a <literal>BEFORE
ROW</> trigger fired for the same update.
</para>
</listitem>
<listitem>
<para>
Fix performance problem when constructing a large, lossy bitmap
(Tom Lane)
</para>
</listitem>
<listitem>
<para>
Fix join selectivity estimation for unique columns (Tom Lane)
</para>
<para>
This fixes an erroneous planner heuristic that could lead to poor
estimates of the result size of a join.
</para>
</listitem>
<listitem>
<para>
Fix nested PlaceHolderVar expressions that appear only in sub-select
target lists (Tom Lane)
</para>
<para>
This mistake could result in outputs of an outer join incorrectly
appearing as NULL.
</para>
</listitem>
<listitem>
<para>
Allow the planner to assume that empty parent tables really are empty
(Tom Lane)
</para>
<para>
Normally an empty table is assumed to have a certain minimum size for
planning purposes; but this heuristic seems to do more harm than good
for the parent table of an inheritance hierarchy, which often is
permanently empty.
</para>
</listitem>
<listitem>
<para>
Allow nested <literal>EXISTS</> queries to be optimized properly (Tom
Lane)
</para>
</listitem>
<listitem>
<para>
Fix array- and path-creating functions to ensure padding bytes are
zeroes (Tom Lane)
</para>
<para>
This avoids some situations where the planner will think that
semantically-equal constants are not equal, resulting in poor
optimization.
</para>
</listitem>
<listitem>
<para>
Fix <command>EXPLAIN</> to handle gating Result nodes within
inner-indexscan subplans (Tom Lane)
</para>
<para>
The usual symptom of this oversight was <quote>bogus varno</> errors.
</para>
</listitem>
<listitem>
<para>
Fix btree preprocessing of <replaceable>indexedcol</> <literal>IS
NULL</> conditions (Dean Rasheed)
</para>
<para>
Such a condition is unsatisfiable if combined with any other type of
btree-indexable condition on the same index column. The case was
handled incorrectly in 9.0.0 and later, leading to query output where
there should be none.
</para>
</listitem>
<listitem>
<para>
Work around gcc 4.6.0 bug that breaks WAL replay (Tom Lane)
</para>
<para>
This could lead to loss of committed transactions after a server crash.
</para>
</listitem>
<listitem>
<para>
Fix dump bug for <literal>VALUES</> in a view (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Disallow <literal>SELECT FOR UPDATE/SHARE</> on sequences (Tom Lane)
</para>
<para>
This operation doesn't work as expected and can lead to failures.
</para>
</listitem>
<listitem>
<para>
Fix <command>VACUUM</> so that it always updates
<literal>pg_class</>.<literal>reltuples</>/<literal>relpages</> (Tom
Lane)
</para>
<para>
This fixes some scenarios where autovacuum could make increasingly poor
decisions about when to vacuum tables.
</para>
</listitem>
<listitem>
<para>
Defend against integer overflow when computing size of a hash table (Tom
Lane)
</para>
</listitem>
<listitem>
<para>
Fix cases where <command>CLUSTER</> might attempt to access
already-removed TOAST data (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Fix premature timeout failures during initial authentication transaction
(Tom Lane)
</para>
</listitem>
<listitem>
<para>
Fix portability bugs in use of credentials control messages for
<quote>peer</> authentication (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Fix SSPI login when multiple roundtrips are required (Ahmed Shinwari,
Magnus Hagander)
</para>
<para>
The typical symptom of this problem was <quote>The function requested is
not supported</> errors during SSPI login.
</para>
</listitem>
<listitem>
<para>
Fix failure when adding a new variable of a custom variable class to
<filename>postgresql.conf</> (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Throw an error if <filename>pg_hba.conf</> contains <literal>hostssl</>
but SSL is disabled (Tom Lane)
</para>
<para>
This was concluded to be more user-friendly than the previous behavior
of silently ignoring such lines.
</para>
</listitem>
<listitem>
<para>
Fix failure when <command>DROP OWNED BY</> attempts to remove default
privileges on sequences (Shigeru Hanada)
</para>
</listitem>
<listitem>
<para>
Fix typo in <function>pg_srand48</> seed initialization (Andres Freund)
</para>
<para>
This led to failure to use all bits of the provided seed. This function
is not used on most platforms (only those without <function>srandom</>),
and the potential security exposure from a less-random-than-expected
seed seems minimal in any case.
</para>
</listitem>
<listitem>
<para>
Avoid integer overflow when the sum of <literal>LIMIT</> and
<literal>OFFSET</> values exceeds 2^63 (Heikki Linnakangas)
</para>
</listitem>
<listitem>
<para>
Add overflow checks to <type>int4</> and <type>int8</> versions of
<function>generate_series()</> (Robert Haas)
</para>
</listitem>
<listitem>
<para>
Fix trailing-zero removal in <function>to_char()</> (Marti Raudsepp)
</para>
<para>
In a format with <literal>FM</> and no digit positions
after the decimal point, zeroes to the left of the decimal point could
be removed incorrectly.
</para>
</listitem>
<listitem>
<para>
Fix <function>pg_size_pretty()</> to avoid overflow for inputs close to
2^63 (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Weaken plpgsql's check for typmod matching in record values (Tom Lane)
</para>
<para>
An overly enthusiastic check could lead to discarding length modifiers
that should have been kept.
</para>
</listitem>
<listitem>
<para>
Correctly handle quotes in locale names during <application>initdb</>
(Heikki Linnakangas)
</para>
<para>
The case can arise with some Windows locales, such as <quote>People's
Republic of China</>.
</para>
</listitem>
<listitem>
<para>
In <application>pg_upgrade</>, avoid dumping orphaned temporary tables
(Bruce Momjian)
</para>
<para>
This prevents situations wherein table OID assignments could get out of
sync between old and new installations.
</para>
</listitem>
<listitem>
<para>
Fix <application>pg_upgrade</> to preserve toast tables' relfrozenxids
during an upgrade from 8.3 (Bruce Momjian)
</para>
<para>
Failure to do this could lead to <filename>pg_clog</> files being
removed too soon after the upgrade.
</para>
</listitem>
<listitem>
<para>
In <application>pg_upgrade</>, fix the <literal>-l</> (log) option to
work on Windows (Bruce Momjian)
</para>
</listitem>
<listitem>
<para>
In <application>pg_ctl</>, support silent mode for service registrations
on Windows (MauMau)
</para>
</listitem>
<listitem>
<para>
Fix <application>psql</>'s counting of script file line numbers during
<literal>COPY</> from a different file (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Fix <application>pg_restore</>'s direct-to-database mode for
<varname>standard_conforming_strings</> (Tom Lane)
</para>
<para>
<application>pg_restore</> could emit incorrect commands when restoring
directly to a database server from an archive file that had been made
with <varname>standard_conforming_strings</> set to <literal>on</>.
</para>
</listitem>
<listitem>
<para>
Be more user-friendly about unsupported cases for parallel
<application>pg_restore</> (Tom Lane)
</para>
<para>
This change ensures that such cases are detected and reported before
any restore actions have been taken.
</para>
</listitem>
<listitem>
<para>
Fix write-past-buffer-end and memory leak in <application>libpq</>'s
LDAP service lookup code (Albe Laurenz)
</para>
</listitem>
<listitem>
<para>
In <application>libpq</>, avoid failures when using nonblocking I/O
and an SSL connection (Martin Pihlak, Tom Lane)
</para>
</listitem>
<listitem>
<para>
Improve libpq's handling of failures during connection startup
(Tom Lane)
</para>
<para>
In particular, the response to a server report of <function>fork()</>
failure during SSL connection startup is now saner.
</para>
</listitem>
<listitem>
<para>
Improve <application>libpq</>'s error reporting for SSL failures (Tom
Lane)
</para>
</listitem>
<listitem>
<para>
Fix <function>PQsetvalue()</> to avoid possible crash when adding a new
tuple to a <structname>PGresult</> originally obtained from a server
query (Andrew Chernow)
</para>
</listitem>
<listitem>
<para>
Make <application>ecpglib</> write <type>double</> values with 15 digits
precision (Akira Kurosawa)
</para>
</listitem>
<listitem>
<para>
In <application>ecpglib</>, be sure <literal>LC_NUMERIC</> setting is
restored after an error (Michael Meskes)
</para>
</listitem>
<listitem>
<para>
Apply upstream fix for blowfish signed-character bug (CVE-2011-2483)
(Tom Lane)
</para>
<para>
<filename>contrib/pg_crypto</>'s blowfish encryption code could give
wrong results on platforms where char is signed (which is most),
leading to encrypted passwords being weaker than they should be.
</para>
</listitem>
<listitem>
<para>
Fix memory leak in <filename>contrib/seg</> (Heikki Linnakangas)
</para>
</listitem>
<listitem>
<para>
Fix <function>pgstatindex()</> to give consistent results for empty
indexes (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Allow building with perl 5.14 (Alex Hunsaker)
</para>
</listitem>
<listitem>
<para>
Fix assorted issues with build and install file paths containing spaces
(Tom Lane)
</para>
</listitem>
<listitem>
<para>
Update time zone data files to <application>tzdata</> release 2011i
for DST law changes in Canada, Egypt, Russia, Samoa, and South Sudan.
</para>
</listitem>
</itemizedlist>
</sect2>
</sect1>
<sect1 id="release-9-0-4">
<title>Release 9.0.4</title>

View File

@ -1,6 +1,74 @@
<!-- doc/src/sgml/release-9.1.sgml -->
<!-- See header comment in release.sgml about typical markup -->
<sect1 id="release-9-1-1">
<title>Release 9.1.1</title>
<note>
<title>Release Date</title>
<simpara>2011-09-26</simpara>
</note>
<para>
This release contains a small number of fixes from 9.1.0.
For information about new features in the 9.1 major release, see
<xref linkend="release-9-1">.
</para>
<sect2>
<title>Migration to Version 9.1.1</title>
<para>
A dump/restore is not required for those running 9.1.X.
</para>
</sect2>
<sect2>
<title>Changes</title>
<itemizedlist>
<listitem>
<para>
Make <function>pg_options_to_table</> return NULL for an option with no
value (Tom Lane)
</para>
<para>
Previously such cases would result in a server crash.
</para>
</listitem>
<listitem>
<para>
Fix memory leak at end of a GiST index scan (Tom Lane)
</para>
<para>
Commands that perform many separate GiST index scans, such as
verification of a new GiST-based exclusion constraint on a table
already containing many rows, could transiently require large amounts of
memory due to this leak.
</para>
</listitem>
<listitem>
<para>
Fix explicit reference to <literal>pg_temp</> schema in <command>CREATE
TEMPORARY TABLE</> (Robert Haas)
</para>
<para>
This used to be allowed, but failed in 9.1.0.
</para>
</listitem>
</itemizedlist>
</sect2>
</sect1>
<sect1 id="release-9-1">
<title>Release 9.1</title>
@ -377,6 +445,14 @@
rather than by manually invoking their SQL scripts
(Dimitri Fontaine, Tom Lane)
</para>
<para>
To update an existing database containing the 9.0 version of a contrib
module, use <literal>CREATE EXTENSION ... FROM unpackaged</literal>
to wrap the existing contrib module's objects into an extension. When
updating from a pre-9.0 version, drop the contrib module's objects
using its old uninstall script, then use <literal>CREATE EXTENSION</>.
</para>
</listitem>
</itemizedlist>