Commit 98eded93 authored by Tom Lane's avatar Tom Lane

Update release notes for releases 9.0.4, 8.4.8, 8.3.15, and 8.2.21.

parent 07e58cbe
<!-- doc/src/sgml/release-8.2.sgml -->
<!-- See header comment in release.sgml about typical markup -->
<sect1 id="release-8-2-21">
<title>Release 8.2.21</title>
<note>
<title>Release Date</title>
<simpara>2011-04-18</simpara>
</note>
<para>
This release contains a variety of fixes from 8.2.20.
For information about new features in the 8.2 major release, see
<xref linkend="release-8-2">.
</para>
<sect2>
<title>Migration to Version 8.2.21</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>
Avoid potential deadlock during catalog cache initialization
(Nikhil Sontakke)
</para>
<para>
In some cases the cache loading code would acquire share lock on a
system index before locking the index's catalog. This could deadlock
against processes trying to acquire exclusive locks in the other,
more standard order.
</para>
</listitem>
<listitem>
<para>
Fix dangling-pointer problem in <literal>BEFORE ROW UPDATE</> trigger
handling when there was a concurrent update to the target tuple
(Tom Lane)
</para>
<para>
This bug has been observed to result in intermittent <quote>cannot
extract system attribute from virtual tuple</> failures while trying to
do <literal>UPDATE RETURNING ctid</>. There is a very small probability
of more serious errors, such as generating incorrect index entries for
the updated tuple.
</para>
</listitem>
<listitem>
<para>
Disallow <command>DROP TABLE</> when there are pending deferred trigger
events for the table (Tom Lane)
</para>
<para>
Formerly the <command>DROP</> would go through, leading to
<quote>could not open relation with OID nnn</> errors when the
triggers were eventually fired.
</para>
</listitem>
<listitem>
<para>
Fix PL/Python memory leak involving array slices (Daniel Popowich)
</para>
</listitem>
<listitem>
<para>
Fix <application>pg_restore</> to cope with long lines (over 1KB) in
TOC files (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Put in more safeguards against crashing due to division-by-zero
with overly enthusiastic compiler optimization (Aurelien Jarno)
</para>
</listitem>
<listitem>
<para>
Support use of dlopen() in FreeBSD and OpenBSD on MIPS (Tom Lane)
</para>
<para>
There was a hard-wired assumption that this system function was not
available on MIPS hardware on these systems. Use a compile-time test
instead, since more recent versions have it.
</para>
</listitem>
<listitem>
<para>
Fix compilation failures on HP-UX (Heikki Linnakangas)
</para>
</listitem>
<listitem>
<para>
Fix path separator used by <application>pg_regress</> on Cygwin
(Andrew Dunstan)
</para>
</listitem>
<listitem>
<para>
Update time zone data files to <application>tzdata</> release 2011f
for DST law changes in Chile, Cuba, Falkland Islands, Morocco, Samoa,
and Turkey; also historical corrections for South Australia, Alaska,
and Hawaii.
</para>
</listitem>
</itemizedlist>
</sect2>
</sect1>
<sect1 id="release-8-2-20">
<title>Release 8.2.20</title>
......
<!-- doc/src/sgml/release-8.3.sgml -->
<!-- See header comment in release.sgml about typical markup -->
<sect1 id="release-8-3-15">
<title>Release 8.3.15</title>
<note>
<title>Release Date</title>
<simpara>2011-04-18</simpara>
</note>
<para>
This release contains a variety of fixes from 8.3.14.
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.15</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>
Disallow including a composite type in itself (Tom Lane)
</para>
<para>
This prevents scenarios wherein the server could recurse infinitely
while processing the composite type. While there are some possible
uses for such a structure, they don't seem compelling enough to
justify the effort required to make sure it always works safely.
</para>
</listitem>
<listitem>
<para>
Avoid potential deadlock during catalog cache initialization
(Nikhil Sontakke)
</para>
<para>
In some cases the cache loading code would acquire share lock on a
system index before locking the index's catalog. This could deadlock
against processes trying to acquire exclusive locks in the other,
more standard order.
</para>
</listitem>
<listitem>
<para>
Fix dangling-pointer problem in <literal>BEFORE ROW UPDATE</> trigger
handling when there was a concurrent update to the target tuple
(Tom Lane)
</para>
<para>
This bug has been observed to result in intermittent <quote>cannot
extract system attribute from virtual tuple</> failures while trying to
do <literal>UPDATE RETURNING ctid</>. There is a very small probability
of more serious errors, such as generating incorrect index entries for
the updated tuple.
</para>
</listitem>
<listitem>
<para>
Disallow <command>DROP TABLE</> when there are pending deferred trigger
events for the table (Tom Lane)
</para>
<para>
Formerly the <command>DROP</> would go through, leading to
<quote>could not open relation with OID nnn</> errors when the
triggers were eventually fired.
</para>
</listitem>
<listitem>
<para>
Fix PL/Python memory leak involving array slices (Daniel Popowich)
</para>
</listitem>
<listitem>
<para>
Fix <application>pg_restore</> to cope with long lines (over 1KB) in
TOC files (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Put in more safeguards against crashing due to division-by-zero
with overly enthusiastic compiler optimization (Aurelien Jarno)
</para>
</listitem>
<listitem>
<para>
Support use of dlopen() in FreeBSD and OpenBSD on MIPS (Tom Lane)
</para>
<para>
There was a hard-wired assumption that this system function was not
available on MIPS hardware on these systems. Use a compile-time test
instead, since more recent versions have it.
</para>
</listitem>
<listitem>
<para>
Fix compilation failures on HP-UX (Heikki Linnakangas)
</para>
</listitem>
<listitem>
<para>
Fix version-incompatibility problem with <application>libintl</> on
Windows (Hiroshi Inoue)
</para>
</listitem>
<listitem>
<para>
Fix usage of <application>xcopy</> in Windows build scripts to
work correctly under Windows 7 (Andrew Dunstan)
</para>
<para>
This affects the build scripts only, not installation or usage.
</para>
</listitem>
<listitem>
<para>
Fix path separator used by <application>pg_regress</> on Cygwin
(Andrew Dunstan)
</para>
</listitem>
<listitem>
<para>
Update time zone data files to <application>tzdata</> release 2011f
for DST law changes in Chile, Cuba, Falkland Islands, Morocco, Samoa,
and Turkey; also historical corrections for South Australia, Alaska,
and Hawaii.
</para>
</listitem>
</itemizedlist>
</sect2>
</sect1>
<sect1 id="release-8-3-14">
<title>Release 8.3.14</title>
......
<!-- doc/src/sgml/release-8.4.sgml -->
<!-- See header comment in release.sgml about typical markup -->
<sect1 id="release-8-4-8">
<title>Release 8.4.8</title>
<note>
<title>Release Date</title>
<simpara>2011-04-18</simpara>
</note>
<para>
This release contains a variety of fixes from 8.4.7.
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.8</title>
<para>
A dump/restore is not required for those running 8.4.X.
</para>
<para>
However, if your installation was upgraded from a previous major
release by running <application>pg_upgrade</>, you should take
action to prevent possible data loss due to a now-fixed bug in
<application>pg_upgrade</>. The recommended solution is to run
<command>VACUUM FREEZE</> on all TOAST tables.
More information is available at <ulink
url="http://wiki.postgresql.org/wiki/20110408pg_upgrade_fix">
http://wiki.postgresql.org/wiki/20110408pg_upgrade_fix</ulink>.
</para>
<para>
Also, if you are upgrading from a version earlier than 8.4.2,
see the release notes for 8.4.2.
</para>
</sect2>
<sect2>
<title>Changes</title>
<itemizedlist>
<listitem>
<para>
Fix <application>pg_upgrade</>'s handling of TOAST tables
(Bruce Momjian)
</para>
<para>
The <structname>pg_class</>.<structfield>relfrozenxid</> value for
TOAST tables was not correctly copied into the new installation
during <application>pg_upgrade</>. This could later result in
<literal>pg_clog</> files being discarded while they were still
needed to validate tuples in the TOAST tables, leading to
<quote>could not access status of transaction</> failures.
</para>
<para>
This error poses a significant risk of data loss for installations
that have been upgraded with <application>pg_upgrade</>. This patch
corrects the problem for future uses of <application>pg_upgrade</>,
but does not in itself cure the issue in installations that have been
processed with a buggy version of <application>pg_upgrade</>.
</para>
</listitem>
<listitem>
<para>
Suppress incorrect <quote>PD_ALL_VISIBLE flag was incorrectly set</>
warning (Heikki Linnakangas)
</para>
<para>
<command>VACUUM</> would sometimes issue this warning in cases that
are actually valid.
</para>
</listitem>
<listitem>
<para>
Disallow including a composite type in itself (Tom Lane)
</para>
<para>
This prevents scenarios wherein the server could recurse infinitely
while processing the composite type. While there are some possible
uses for such a structure, they don't seem compelling enough to
justify the effort required to make sure it always works safely.
</para>
</listitem>
<listitem>
<para>
Avoid potential deadlock during catalog cache initialization
(Nikhil Sontakke)
</para>
<para>
In some cases the cache loading code would acquire share lock on a
system index before locking the index's catalog. This could deadlock
against processes trying to acquire exclusive locks in the other,
more standard order.
</para>
</listitem>
<listitem>
<para>
Fix dangling-pointer problem in <literal>BEFORE ROW UPDATE</> trigger
handling when there was a concurrent update to the target tuple
(Tom Lane)
</para>
<para>
This bug has been observed to result in intermittent <quote>cannot
extract system attribute from virtual tuple</> failures while trying to
do <literal>UPDATE RETURNING ctid</>. There is a very small probability
of more serious errors, such as generating incorrect index entries for
the updated tuple.
</para>
</listitem>
<listitem>
<para>
Disallow <command>DROP TABLE</> when there are pending deferred trigger
events for the table (Tom Lane)
</para>
<para>
Formerly the <command>DROP</> would go through, leading to
<quote>could not open relation with OID nnn</> errors when the
triggers were eventually fired.
</para>
</listitem>
<listitem>
<para>
Prevent crash triggered by constant-false WHERE conditions during
GEQO optimization (Tom Lane)
</para>
<para>
</para>
</listitem>
<listitem>
<para>
Improve planner's handling of semi-join and anti-join cases
(Tom Lane)
</para>
</listitem>
<listitem>
<para>
Fix selectivity estimation for text search to account for NULLs
(Jesper Krogh)
</para>
</listitem>
<listitem>
<para>
Improve PL/pgSQL's ability to handle row types with dropped columns
(Pavel Stehule)
</para>
<para>
This is a back-patch of fixes previously made in 9.0.
</para>
</listitem>
<listitem>
<para>
Fix PL/Python memory leak involving array slices (Daniel Popowich)
</para>
</listitem>
<listitem>
<para>
Fix <application>pg_restore</> to cope with long lines (over 1KB) in
TOC files (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Put in more safeguards against crashing due to division-by-zero
with overly enthusiastic compiler optimization (Aurelien Jarno)
</para>
</listitem>
<listitem>
<para>
Support use of dlopen() in FreeBSD and OpenBSD on MIPS (Tom Lane)
</para>
<para>
There was a hard-wired assumption that this system function was not
available on MIPS hardware on these systems. Use a compile-time test
instead, since more recent versions have it.
</para>
</listitem>
<listitem>
<para>
Fix compilation failures on HP-UX (Heikki Linnakangas)
</para>
</listitem>
<listitem>
<para>
Fix version-incompatibility problem with <application>libintl</> on
Windows (Hiroshi Inoue)
</para>
</listitem>
<listitem>
<para>
Fix usage of <application>xcopy</> in Windows build scripts to
work correctly under Windows 7 (Andrew Dunstan)
</para>
<para>
This affects the build scripts only, not installation or usage.
</para>
</listitem>
<listitem>
<para>
Fix path separator used by <application>pg_regress</> on Cygwin
(Andrew Dunstan)
</para>
</listitem>
<listitem>
<para>
Update time zone data files to <application>tzdata</> release 2011f
for DST law changes in Chile, Cuba, Falkland Islands, Morocco, Samoa,
and Turkey; also historical corrections for South Australia, Alaska,
and Hawaii.
</para>
</listitem>
</itemizedlist>
</sect2>
</sect1>
<sect1 id="release-8-4-7">
<title>Release 8.4.7</title>
......
<!-- doc/src/sgml/release-9.0.sgml -->
<!-- See header comment in release.sgml about typical markup -->
<sect1 id="release-9-0-4">
<title>Release 9.0.4</title>
<note>
<title>Release Date</title>
<simpara>2011-04-18</simpara>
</note>
<para>
This release contains a variety of fixes from 9.0.3.
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.4</title>
<para>
A dump/restore is not required for those running 9.0.X.
</para>
<para>
However, if your installation was upgraded from a previous major
release by running <application>pg_upgrade</>, you should take
action to prevent possible data loss due to a now-fixed bug in
<application>pg_upgrade</>. The recommended solution is to run
<command>VACUUM FREEZE</> on all TOAST tables.
More information is available at <ulink
url="http://wiki.postgresql.org/wiki/20110408pg_upgrade_fix">
http://wiki.postgresql.org/wiki/20110408pg_upgrade_fix</ulink>.
</para>
</sect2>
<sect2>
<title>Changes</title>
<itemizedlist>
<listitem>
<para>
Fix <application>pg_upgrade</>'s handling of TOAST tables
(Bruce Momjian)
</para>
<para>
The <structname>pg_class</>.<structfield>relfrozenxid</> value for
TOAST tables was not correctly copied into the new installation
during <application>pg_upgrade</>. This could later result in
<literal>pg_clog</> files being discarded while they were still
needed to validate tuples in the TOAST tables, leading to
<quote>could not access status of transaction</> failures.
</para>
<para>
This error poses a significant risk of data loss for installations
that have been upgraded with <application>pg_upgrade</>. This patch
corrects the problem for future uses of <application>pg_upgrade</>,
but does not in itself cure the issue in installations that have been
processed with a buggy version of <application>pg_upgrade</>.
</para>
</listitem>
<listitem>
<para>
Suppress incorrect <quote>PD_ALL_VISIBLE flag was incorrectly set</>
warning (Heikki Linnakangas)
</para>
<para>
<command>VACUUM</> would sometimes issue this warning in cases that
are actually valid.
</para>
</listitem>
<listitem>
<para>
Use better SQLSTATE error codes for hot standby conflict cases
(Tatsuo Ishii and Simon Riggs)
</para>
<para>
All retryable conflict errors now have an error code that indicates
that a retry is possible. Also, session closure due to the database
being dropped on the master is now reported as
<literal>ERRCODE_DATABASE_DROPPED</>, rather than
<literal>ERRCODE_ADMIN_SHUTDOWN</>, so that connection poolers can
handle the situation correctly.
</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>
Disallow including a composite type in itself (Tom Lane)
</para>
<para>
This prevents scenarios wherein the server could recurse infinitely
while processing the composite type. While there are some possible
uses for such a structure, they don't seem compelling enough to
justify the effort required to make sure it always works safely.
</para>
</listitem>
<listitem>
<para>
Avoid potential deadlock during catalog cache initialization
(Nikhil Sontakke)
</para>
<para>
In some cases the cache loading code would acquire share lock on a
system index before locking the index's catalog. This could deadlock
against processes trying to acquire exclusive locks in the other,
more standard order.
</para>
</listitem>
<listitem>
<para>
Fix dangling-pointer problem in <literal>BEFORE ROW UPDATE</> trigger
handling when there was a concurrent update to the target tuple
(Tom Lane)
</para>
<para>
This bug has been observed to result in intermittent <quote>cannot
extract system attribute from virtual tuple</> failures while trying to
do <literal>UPDATE RETURNING ctid</>. There is a very small probability
of more serious errors, such as generating incorrect index entries for
the updated tuple.
</para>
</listitem>
<listitem>
<para>
Disallow <command>DROP TABLE</> when there are pending deferred trigger
events for the table (Tom Lane)
</para>
<para>
Formerly the <command>DROP</> would go through, leading to
<quote>could not open relation with OID nnn</> errors when the
triggers were eventually fired.
</para>
</listitem>
<listitem>
<para>
Allow <quote>replication</> as a user name in
<filename>pg_hba.conf</> (Andrew Dunstan)
</para>
<para>
<quote>replication</> is special in the database name column, but it
was mistakenly also treated as special in the user name column.
</para>
</listitem>
<listitem>
<para>
Prevent crash triggered by constant-false WHERE conditions during
GEQO optimization (Tom Lane)
</para>
<para>
</para>
</listitem>
<listitem>
<para>
Improve planner's handling of semi-join and anti-join cases
(Tom Lane)
</para>
</listitem>
<listitem>
<para>
Fix handling of <literal>SELECT FOR UPDATE</> in a sub-SELECT
(Tom Lane)
</para>
<para>
This bug typically led to <quote>cannot extract system attribute from
virtual tuple</> errors.
</para>
</listitem>
<listitem>
<para>
Fix selectivity estimation for text search to account for NULLs
(Jesper Krogh)
</para>
</listitem>
<listitem>
<para>
Fix get_actual_variable_range() to support hypothetical indexes
injected by an index adviser plugin (Gurjeet Singh)
</para>
</listitem>
<listitem>
<para>
Fix PL/Python memory leak involving array slices (Daniel Popowich)
</para>
</listitem>
<listitem>
<para>
Allow <application>libpq</>'s SSL initialization to succeed when
user's home directory is unavailable (Tom Lane)
</para>
<para>
If the SSL mode is such that a root certificate file is not required,
there is no need to fail. This change restores the behavior to what
it was in pre-9.0 releases.
</para>
</listitem>
<listitem>
<para>
Fix <application>libpq</> to return a useful error message for errors
detected in <function>conninfo_array_parse</> (Joseph Adams)
</para>
<para>
A typo caused the library to return NULL, rather than the
<structname>PGconn</> structure containing the error message, to the
application.
</para>
</listitem>
<listitem>
<para>
Fix <application>ecpg</> preprocessor's handling of float constants
(Heikki Linnakangas)
</para>
</listitem>
<listitem>
<para>
Fix parallel <application>pg_restore</> to handle comments on
POST_DATA items correctly (Arnd Hannemann)
</para>
</listitem>
<listitem>
<para>
Fix <application>pg_restore</> to cope with long lines (over 1KB) in
TOC files (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Put in more safeguards against crashing due to division-by-zero
with overly enthusiastic compiler optimization (Aurelien Jarno)
</para>
</listitem>
<listitem>
<para>
Support use of dlopen() in FreeBSD and OpenBSD on MIPS (Tom Lane)
</para>
<para>
There was a hard-wired assumption that this system function was not
available on MIPS hardware on these systems. Use a compile-time test
instead, since more recent versions have it.
</para>
</listitem>
<listitem>
<para>
Fix compilation failures on HP-UX (Heikki Linnakangas)
</para>
</listitem>
<listitem>
<para>
Avoid crash when trying to write to the Windows console very early
in process startup (Rushabh Lathia)
</para>
</listitem>
<listitem>
<para>
Support building with MinGW 64 bit compiler for Windows
(Andrew Dunstan)
</para>
</listitem>
<listitem>
<para>
Fix version-incompatibility problem with <application>libintl</> on
Windows (Hiroshi Inoue)
</para>
</listitem>
<listitem>
<para>
Fix usage of <application>xcopy</> in Windows build scripts to
work correctly under Windows 7 (Andrew Dunstan)
</para>
<para>
This affects the build scripts only, not installation or usage.
</para>
</listitem>
<listitem>
<para>
Fix path separator used by <application>pg_regress</> on Cygwin
(Andrew Dunstan)
</para>
</listitem>
<listitem>
<para>
Update time zone data files to <application>tzdata</> release 2011f
for DST law changes in Chile, Cuba, Falkland Islands, Morocco, Samoa,
and Turkey; also historical corrections for South Australia, Alaska,
and Hawaii.
</para>
</listitem>
</itemizedlist>
</sect2>
</sect1>
<sect1 id="release-9-0-3">
<title>Release 9.0.3</title>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment