summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/src/sgml/release-8.2.sgml174
-rw-r--r--doc/src/sgml/release-8.3.sgml193
-rw-r--r--doc/src/sgml/release-8.4.sgml264
-rw-r--r--doc/src/sgml/release-9.0.sgml357
4 files changed, 937 insertions, 51 deletions
diff --git a/doc/src/sgml/release-8.2.sgml b/doc/src/sgml/release-8.2.sgml
index 2dd49d6a06..0a9ee5031a 100644
--- a/doc/src/sgml/release-8.2.sgml
+++ b/doc/src/sgml/release-8.2.sgml
@@ -1,11 +1,143 @@
<!-- 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>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2011-01-31</simpara>
</note>
@@ -137,7 +269,7 @@
<title>Release 8.2.19</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2010-12-16</simpara>
</note>
@@ -381,7 +513,7 @@
<title>Release 8.2.18</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2010-10-04</simpara>
</note>
@@ -667,7 +799,7 @@
<title>Release 8.2.17</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2010-05-17</simpara>
</note>
@@ -868,7 +1000,7 @@
<title>Release 8.2.16</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2010-03-15</simpara>
</note>
@@ -1139,7 +1271,7 @@
<title>Release 8.2.15</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2009-12-14</simpara>
</note>
@@ -1383,7 +1515,7 @@
<title>Release 8.2.14</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2009-09-09</simpara>
</note>
@@ -1613,7 +1745,7 @@
<title>Release 8.2.13</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2009-03-16</simpara>
</note>
@@ -1779,7 +1911,7 @@
<title>Release 8.2.12</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2009-02-02</simpara>
</note>
@@ -1958,7 +2090,7 @@
<title>Release 8.2.11</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2008-11-03</simpara>
</note>
@@ -2142,7 +2274,7 @@
<title>Release 8.2.10</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2008-09-22</simpara>
</note>
@@ -2374,7 +2506,7 @@
<title>Release 8.2.9</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2008-06-12</simpara>
</note>
@@ -2441,7 +2573,7 @@
<title>Release 8.2.8</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>never released</simpara>
</note>
@@ -2636,7 +2768,7 @@
<title>Release 8.2.7</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2008-03-17</simpara>
</note>
@@ -2905,7 +3037,7 @@
<title>Release 8.2.6</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2008-01-07</simpara>
</note>
@@ -3196,7 +3328,7 @@
<title>Release 8.2.5</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2007-09-17</simpara>
</note>
@@ -3373,7 +3505,7 @@
<title>Release 8.2.4</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2007-04-23</simpara>
</note>
@@ -3517,7 +3649,7 @@
<title>Release 8.2.3</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2007-02-07</simpara>
</note>
@@ -3563,7 +3695,7 @@
<title>Release 8.2.2</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2007-02-05</simpara>
</note>
@@ -3721,7 +3853,7 @@
<title>Release 8.2.1</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2007-01-08</simpara>
</note>
@@ -3856,7 +3988,7 @@
<title>Release 8.2</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2006-12-05</simpara>
</note>
diff --git a/doc/src/sgml/release-8.3.sgml b/doc/src/sgml/release-8.3.sgml
index c0595ab5df..bccc141a54 100644
--- a/doc/src/sgml/release-8.3.sgml
+++ b/doc/src/sgml/release-8.3.sgml
@@ -1,11 +1,174 @@
<!-- 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>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2011-01-31</simpara>
</note>
@@ -137,7 +300,7 @@
<title>Release 8.3.13</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2010-12-16</simpara>
</note>
@@ -415,7 +578,7 @@
<title>Release 8.3.12</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2010-10-04</simpara>
</note>
@@ -778,7 +941,7 @@
<title>Release 8.3.11</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2010-05-17</simpara>
</note>
@@ -1007,7 +1170,7 @@
<title>Release 8.3.10</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2010-03-15</simpara>
</note>
@@ -1334,7 +1497,7 @@
<title>Release 8.3.9</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2009-12-14</simpara>
</note>
@@ -1667,7 +1830,7 @@
<title>Release 8.3.8</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2009-09-09</simpara>
</note>
@@ -1957,7 +2120,7 @@
<title>Release 8.3.7</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2009-03-16</simpara>
</note>
@@ -2180,7 +2343,7 @@
<title>Release 8.3.6</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2009-02-02</simpara>
</note>
@@ -2474,7 +2637,7 @@
<title>Release 8.3.5</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2008-11-03</simpara>
</note>
@@ -2729,7 +2892,7 @@
<title>Release 8.3.4</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2008-09-22</simpara>
</note>
@@ -3083,7 +3246,7 @@
<title>Release 8.3.3</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2008-06-12</simpara>
</note>
@@ -3150,7 +3313,7 @@
<title>Release 8.3.2</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>never released</simpara>
</note>
@@ -3515,7 +3678,7 @@
<title>Release 8.3.1</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2008-03-17</simpara>
</note>
@@ -3828,7 +3991,7 @@
<title>Release 8.3</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2008-02-04</simpara>
</note>
diff --git a/doc/src/sgml/release-8.4.sgml b/doc/src/sgml/release-8.4.sgml
index 5cabfb4d01..ba1afcafe9 100644
--- a/doc/src/sgml/release-8.4.sgml
+++ b/doc/src/sgml/release-8.4.sgml
@@ -1,11 +1,259 @@
<!-- 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>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2011-01-31</simpara>
</note>
@@ -137,7 +385,7 @@
<title>Release 8.4.6</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2010-12-16</simpara>
</note>
@@ -448,7 +696,7 @@
<title>Release 8.4.5</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2010-10-04</simpara>
</note>
@@ -970,7 +1218,7 @@
<title>Release 8.4.4</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2010-05-17</simpara>
</note>
@@ -1261,7 +1509,7 @@
<title>Release 8.4.3</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2010-03-15</simpara>
</note>
@@ -1728,7 +1976,7 @@
<title>Release 8.4.2</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2009-12-14</simpara>
</note>
@@ -2259,7 +2507,7 @@ WITH w AS (SELECT * FROM foo) SELECT * FROM w, bar ... FOR UPDATE
<title>Release 8.4.1</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2009-09-09</simpara>
</note>
@@ -2558,7 +2806,7 @@ WITH w AS (SELECT * FROM foo) SELECT * FROM w, bar ... FOR UPDATE
<title>Release 8.4</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2009-07-01</simpara>
</note>
diff --git a/doc/src/sgml/release-9.0.sgml b/doc/src/sgml/release-9.0.sgml
index 8fe18cc30e..4b232f065f 100644
--- a/doc/src/sgml/release-9.0.sgml
+++ b/doc/src/sgml/release-9.0.sgml
@@ -1,11 +1,355 @@
<!-- 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>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2011-01-31</simpara>
</note>
@@ -181,7 +525,7 @@
<title>Release 9.0.2</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2010-12-16</simpara>
</note>
@@ -628,7 +972,7 @@
<title>Release 9.0.1</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2010-10-04</simpara>
</note>
@@ -770,7 +1114,7 @@
<title>Release 9.0</title>
<note>
- <title>Release date</title>
+ <title>Release Date</title>
<simpara>2010-09-20</simpara>
</note>
@@ -3521,9 +3865,8 @@ if TG_OP = 'INSERT' and NEW.col1 = ... then
<listitem>
<para>
- Add data and documentation installation location control to <link
- linkend="xfunc-c-pgxs"><acronym>PGXS</></link> Makefiles
- (Mark Cave-Ayland)
+ Add data and documentation installation location control to
+ <acronym>PGXS</> Makefiles (Mark Cave-Ayland)
</para>
</listitem>