aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2011-11-30 19:34:57 -0500
committerTom Lane <tgl@sss.pgh.pa.us>2011-11-30 19:34:57 -0500
commit33dcc3e09a9f7f23b74b3b6b3feebd8bbda47d4e (patch)
treec66596be8122e16c228499d80c8fc7ca115723e0
parent11fa0830d13e4e4698231472954f282d2cc2eae7 (diff)
downloadpostgresql-33dcc3e09a9f7f23b74b3b6b3feebd8bbda47d4e.tar.gz
postgresql-33dcc3e09a9f7f23b74b3b6b3feebd8bbda47d4e.zip
Draft release notes for 9.1.2, 9.0.6, 8.4.10, 8.3.17, 8.2.23.
-rw-r--r--doc/src/sgml/release-8.2.sgml228
-rw-r--r--doc/src/sgml/release-8.3.sgml267
-rw-r--r--doc/src/sgml/release-8.4.sgml315
-rw-r--r--doc/src/sgml/release-9.0.sgml384
4 files changed, 1194 insertions, 0 deletions
diff --git a/doc/src/sgml/release-8.2.sgml b/doc/src/sgml/release-8.2.sgml
index 39bf5da2c9b..a75ed44981c 100644
--- a/doc/src/sgml/release-8.2.sgml
+++ b/doc/src/sgml/release-8.2.sgml
@@ -1,6 +1,234 @@
<!-- doc/src/sgml/release-8.2.sgml -->
<!-- See header comment in release.sgml about typical markup -->
+ <sect1 id="release-8-2-23">
+ <title>Release 8.2.23</title>
+
+ <note>
+ <title>Release Date</title>
+ <simpara>2011-12-05</simpara>
+ </note>
+
+ <para>
+ This release contains a variety of fixes from 8.2.22.
+ For information about new features in the 8.2 major release, see
+ <xref linkend="release-8-2">.
+ </para>
+
+ <para>
+ This is expected to be the last <productname>PostgreSQL</> release
+ in the 8.2.X series. Users are encouraged to update to a newer
+ release branch soon.
+ </para>
+
+ <sect2>
+ <title>Migration to Version 8.2.23</title>
+
+ <para>
+ A dump/restore is not required for those running 8.2.X.
+ </para>
+
+ <para>
+ However, a longstanding error was discovered in the definition of the
+ <literal>information_schema.referential_constraints</> view. If you
+ rely on correct results from that view, you should replace its
+ definition as explained in the first changelog item below.
+ </para>
+
+ <para>
+ Also, 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 bugs in <literal>information_schema.referential_constraints</> view
+ (Tom Lane)
+ </para>
+
+ <para>
+ This view was being insufficiently careful about matching the
+ foreign-key constraint to the depended-on primary or unique key
+ constraint. That could result in failure to show a foreign key
+ constraint at all, or showing it multiple times, or claiming that it
+ depends on a different constraint than the one it really does.
+ </para>
+
+ <para>
+ Since the view definition is installed by <application>initdb</>,
+ merely upgrading will not fix the problem. If you need to fix this
+ in an existing installation, you can (as a superuser) drop the
+ <literal>information_schema</> schema then re-create it by sourcing
+ <filename><replaceable>SHAREDIR</>/information_schema.sql</filename>.
+ (Run <literal>pg_config --sharedir</> if you're uncertain where
+ <replaceable>SHAREDIR</> is.) This must be repeated in each database
+ to be fixed.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix TOAST-related data corruption during <literal>CREATE TABLE dest AS
+ SELECT * FROM src</> or <literal>INSERT INTO dest SELECT * FROM src</>
+ (Tom Lane)
+ </para>
+
+ <para>
+ If a table has been modified by <command>ALTER TABLE ADD COLUMN</>,
+ attempts to copy its data verbatim to another table could produce
+ corrupt results in certain corner cases.
+ The problem can only manifest in this precise form in 8.4 and later,
+ but we patched earlier versions as well in case there are other code
+ paths that could trigger the same bug.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix race condition during toast table access from stale syscache entries
+ (Tom Lane)
+ </para>
+
+ <para>
+ The typical symptom was transient errors like <quote>missing chunk
+ number 0 for toast value NNNNN in pg_toast_2619</>, where the cited
+ toast table would always belong to a system catalog.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Improve locale support in <type>money</> type's input and output
+ (Tom Lane)
+ </para>
+
+ <para>
+ Aside from not supporting all standard
+ <link linkend="guc-lc-monetary"><varname>lc_monetary</></link>
+ formatting options, the input and output functions were inconsistent,
+ meaning there were locales in which dumped <type>money</> values could
+ not be re-read.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Don't let <link
+ linkend="guc-transform-null-equals"><varname>transform_null_equals</></link>
+ affect <literal>CASE foo WHEN NULL ...</> constructs
+ (Heikki Linnakangas)
+ </para>
+
+ <para>
+ <varname>transform_null_equals</> is only supposed to affect
+ <literal>foo = NULL</> expressions written directly by the user, not
+ equality checks generated internally by this form of <literal>CASE</>.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Change foreign-key trigger creation order to better support
+ self-referential foreign keys (Tom Lane)
+ </para>
+
+ <para>
+ For a cascading foreign key that references its own table, a row update
+ will fire both the <literal>ON UPDATE</> trigger and the
+ <literal>CHECK</> trigger as one event. The <literal>ON UPDATE</>
+ trigger must execute first, else the <literal>CHECK</> will check a
+ non-final state of the row and possibly throw an inappropriate error.
+ However, the firing order of these triggers is determined by their
+ names, which generally sort in creation order since the triggers have
+ auto-generated names following the convention
+ <quote>RI_ConstraintTrigger_NNNN</>. A proper fix would require
+ modifying that convention, which we will do in 9.2, but it seems risky
+ to change it in existing releases. So this patch just changes the
+ creation order of the triggers. Users encountering this type of error
+ should drop and re-create the foreign key constraint to get its
+ triggers into the right order.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Preserve blank lines within commands in <application>psql</>'s command
+ history (Robert Haas)
+ </para>
+
+ <para>
+ The former behavior could cause problems if an empty line was removed
+ from within a string literal, for example.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Use the preferred version of <application>xsubpp</> to build PL/Perl,
+ not necessarily the operating system's main copy
+ (David Wheeler and Alex Hunsaker)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Honor query cancel interrupts promptly in <function>pgstatindex()</>
+ (Robert Haas)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Ensure VPATH builds properly install all server header files
+ (Peter Eisentraut)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Shorten file names reported in verbose error messages (Peter Eisentraut)
+ </para>
+
+ <para>
+ Regular builds have always reported just the name of the C file
+ containing the error message call, but VPATH builds formerly
+ reported an absolute path name.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix interpretation of Windows timezone names for Central America
+ (Tom Lane)
+ </para>
+
+ <para>
+ Map <quote>Central America Standard Time</> to <literal>CST6</>, not
+ <literal>CST6CDT</>, because DST is generally not observed anywhere in
+ Central America.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Update time zone data files to <application>tzdata</> release 2011n
+ for DST law changes in Brazil, Cuba, Fiji, Palestine, Russia, and Samoa;
+ also historical corrections for Alaska and British East Africa.
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
<sect1 id="release-8-2-22">
<title>Release 8.2.22</title>
diff --git a/doc/src/sgml/release-8.3.sgml b/doc/src/sgml/release-8.3.sgml
index 9b809003532..ec1880d20fa 100644
--- a/doc/src/sgml/release-8.3.sgml
+++ b/doc/src/sgml/release-8.3.sgml
@@ -1,6 +1,273 @@
<!-- doc/src/sgml/release-8.3.sgml -->
<!-- See header comment in release.sgml about typical markup -->
+ <sect1 id="release-8-3-17">
+ <title>Release 8.3.17</title>
+
+ <note>
+ <title>Release Date</title>
+ <simpara>2011-12-05</simpara>
+ </note>
+
+ <para>
+ This release contains a variety of fixes from 8.3.16.
+ 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.17</title>
+
+ <para>
+ A dump/restore is not required for those running 8.3.X.
+ </para>
+
+ <para>
+ However, a longstanding error was discovered in the definition of the
+ <literal>information_schema.referential_constraints</> view. If you
+ rely on correct results from that view, you should replace its
+ definition as explained in the first changelog item below.
+ </para>
+
+ <para>
+ Also, 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 <literal>information_schema.referential_constraints</> view
+ (Tom Lane)
+ </para>
+
+ <para>
+ This view was being insufficiently careful about matching the
+ foreign-key constraint to the depended-on primary or unique key
+ constraint. That could result in failure to show a foreign key
+ constraint at all, or showing it multiple times, or claiming that it
+ depends on a different constraint than the one it really does.
+ </para>
+
+ <para>
+ Since the view definition is installed by <application>initdb</>,
+ merely upgrading will not fix the problem. If you need to fix this
+ in an existing installation, you can (as a superuser) drop the
+ <literal>information_schema</> schema then re-create it by sourcing
+ <filename><replaceable>SHAREDIR</>/information_schema.sql</filename>.
+ (Run <literal>pg_config --sharedir</> if you're uncertain where
+ <replaceable>SHAREDIR</> is.) This must be repeated in each database
+ to be fixed.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix TOAST-related data corruption during <literal>CREATE TABLE dest AS
+ SELECT * FROM src</> or <literal>INSERT INTO dest SELECT * FROM src</>
+ (Tom Lane)
+ </para>
+
+ <para>
+ If a table has been modified by <command>ALTER TABLE ADD COLUMN</>,
+ attempts to copy its data verbatim to another table could produce
+ corrupt results in certain corner cases.
+ The problem can only manifest in this precise form in 8.4 and later,
+ but we patched earlier versions as well in case there are other code
+ paths that could trigger the same bug.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix race condition during toast table access from stale syscache entries
+ (Tom Lane)
+ </para>
+
+ <para>
+ The typical symptom was transient errors like <quote>missing chunk
+ number 0 for toast value NNNNN in pg_toast_2619</>, where the cited
+ toast table would always belong to a system catalog.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Make <function>DatumGetInetP()</> unpack inet datums that have a 1-byte
+ header, and add a new macro, <function>DatumGetInetPP()</>, that does
+ not (Heikki Linnakangas)
+ </para>
+
+ <para>
+ This change affects no core code, but might prevent crashes in add-on
+ code that expects <function>DatumGetInetP()</> to produce an unpacked
+ datum as per usual convention.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Improve locale support in <type>money</> type's input and output
+ (Tom Lane)
+ </para>
+
+ <para>
+ Aside from not supporting all standard
+ <link linkend="guc-lc-monetary"><varname>lc_monetary</></link>
+ formatting options, the input and output functions were inconsistent,
+ meaning there were locales in which dumped <type>money</> values could
+ not be re-read.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Don't let <link
+ linkend="guc-transform-null-equals"><varname>transform_null_equals</></link>
+ affect <literal>CASE foo WHEN NULL ...</> constructs
+ (Heikki Linnakangas)
+ </para>
+
+ <para>
+ <varname>transform_null_equals</> is only supposed to affect
+ <literal>foo = NULL</> expressions written directly by the user, not
+ equality checks generated internally by this form of <literal>CASE</>.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Change foreign-key trigger creation order to better support
+ self-referential foreign keys (Tom Lane)
+ </para>
+
+ <para>
+ For a cascading foreign key that references its own table, a row update
+ will fire both the <literal>ON UPDATE</> trigger and the
+ <literal>CHECK</> trigger as one event. The <literal>ON UPDATE</>
+ trigger must execute first, else the <literal>CHECK</> will check a
+ non-final state of the row and possibly throw an inappropriate error.
+ However, the firing order of these triggers is determined by their
+ names, which generally sort in creation order since the triggers have
+ auto-generated names following the convention
+ <quote>RI_ConstraintTrigger_NNNN</>. A proper fix would require
+ modifying that convention, which we will do in 9.2, but it seems risky
+ to change it in existing releases. So this patch just changes the
+ creation order of the triggers. Users encountering this type of error
+ should drop and re-create the foreign key constraint to get its
+ triggers into the right order.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Avoid floating-point underflow while tracking buffer allocation rate
+ (Greg Matthews)
+ </para>
+
+ <para>
+ While harmless in itself, on certain platforms this would result in
+ annoying kernel log messages.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Preserve blank lines within commands in <application>psql</>'s command
+ history (Robert Haas)
+ </para>
+
+ <para>
+ The former behavior could cause problems if an empty line was removed
+ from within a string literal, for example.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix <application>pg_dump</> to dump user-defined casts between
+ auto-generated types, such as table rowtypes (Tom Lane)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Use the preferred version of <application>xsubpp</> to build PL/Perl,
+ not necessarily the operating system's main copy
+ (David Wheeler and Alex Hunsaker)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix incorrect coding in <filename>contrib/dict_int</> and
+ <filename>contrib/dict_xsyn</> (Tom Lane)
+ </para>
+
+ <para>
+ Some functions incorrectly assumed that memory returned by
+ <function>palloc()</> is guaranteed zeroed.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Honor query cancel interrupts promptly in <function>pgstatindex()</>
+ (Robert Haas)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Ensure VPATH builds properly install all server header files
+ (Peter Eisentraut)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Shorten file names reported in verbose error messages (Peter Eisentraut)
+ </para>
+
+ <para>
+ Regular builds have always reported just the name of the C file
+ containing the error message call, but VPATH builds formerly
+ reported an absolute path name.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix interpretation of Windows timezone names for Central America
+ (Tom Lane)
+ </para>
+
+ <para>
+ Map <quote>Central America Standard Time</> to <literal>CST6</>, not
+ <literal>CST6CDT</>, because DST is generally not observed anywhere in
+ Central America.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Update time zone data files to <application>tzdata</> release 2011n
+ for DST law changes in Brazil, Cuba, Fiji, Palestine, Russia, and Samoa;
+ also historical corrections for Alaska and British East Africa.
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
<sect1 id="release-8-3-16">
<title>Release 8.3.16</title>
diff --git a/doc/src/sgml/release-8.4.sgml b/doc/src/sgml/release-8.4.sgml
index 90feb0ecc64..27e1e6c7b1e 100644
--- a/doc/src/sgml/release-8.4.sgml
+++ b/doc/src/sgml/release-8.4.sgml
@@ -1,6 +1,321 @@
<!-- doc/src/sgml/release-8.4.sgml -->
<!-- See header comment in release.sgml about typical markup -->
+ <sect1 id="release-8-4-10">
+ <title>Release 8.4.10</title>
+
+ <note>
+ <title>Release Date</title>
+ <simpara>2011-12-05</simpara>
+ </note>
+
+ <para>
+ This release contains a variety of fixes from 8.4.9.
+ 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.10</title>
+
+ <para>
+ A dump/restore is not required for those running 8.4.X.
+ </para>
+
+ <para>
+ However, a longstanding error was discovered in the definition of the
+ <literal>information_schema.referential_constraints</> view. If you
+ rely on correct results from that view, you should replace its
+ definition as explained in the first changelog item below.
+ </para>
+
+ <para>
+ Also, 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 <literal>information_schema.referential_constraints</> view
+ (Tom Lane)
+ </para>
+
+ <para>
+ This view was being insufficiently careful about matching the
+ foreign-key constraint to the depended-on primary or unique key
+ constraint. That could result in failure to show a foreign key
+ constraint at all, or showing it multiple times, or claiming that it
+ depends on a different constraint than the one it really does.
+ </para>
+
+ <para>
+ Since the view definition is installed by <application>initdb</>,
+ merely upgrading will not fix the problem. If you need to fix this
+ in an existing installation, you can (as a superuser) drop the
+ <literal>information_schema</> schema then re-create it by sourcing
+ <filename><replaceable>SHAREDIR</>/information_schema.sql</filename>.
+ (Run <literal>pg_config --sharedir</> if you're uncertain where
+ <replaceable>SHAREDIR</> is.) This must be repeated in each database
+ to be fixed.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix incorrect replay of WAL records for GIN index updates
+ (Tom Lane)
+ </para>
+
+ <para>
+ This could result in transiently failing to find index entries after
+ a crash, or on a hot-standby server. The problem would be repaired
+ by the next <command>VACUUM</> of the index, however.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix TOAST-related data corruption during <literal>CREATE TABLE dest AS
+ SELECT * FROM src</> or <literal>INSERT INTO dest SELECT * FROM src</>
+ (Tom Lane)
+ </para>
+
+ <para>
+ If a table has been modified by <command>ALTER TABLE ADD COLUMN</>,
+ attempts to copy its data verbatim to another table could produce
+ corrupt results in certain corner cases.
+ The problem can only manifest in this precise form in 8.4 and later,
+ but we patched earlier versions as well in case there are other code
+ paths that could trigger the same bug.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix race condition during toast table access from stale syscache entries
+ (Tom Lane)
+ </para>
+
+ <para>
+ The typical symptom was transient errors like <quote>missing chunk
+ number 0 for toast value NNNNN in pg_toast_2619</>, where the cited
+ toast table would always belong to a system catalog.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Track dependencies of functions on items used in parameter default
+ expressions (Tom Lane)
+ </para>
+
+ <para>
+ Previously, a referenced object could be dropped without having dropped
+ or modified the function, leading to misbehavior when the function was
+ used. Note that merely installing this update will not fix the missing
+ dependency entries; to do that, you'd need to <command>CREATE OR
+ REPLACE</> each such function afterwards. If you have functions whose
+ defaults depend on non-built-in objects, doing so is recommended.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Allow inlining of set-returning SQL functions with multiple OUT
+ parameters (Tom Lane)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Make <function>DatumGetInetP()</> unpack inet datums that have a 1-byte
+ header, and add a new macro, <function>DatumGetInetPP()</>, that does
+ not (Heikki Linnakangas)
+ </para>
+
+ <para>
+ This change affects no core code, but might prevent crashes in add-on
+ code that expects <function>DatumGetInetP()</> to produce an unpacked
+ datum as per usual convention.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Improve locale support in <type>money</> type's input and output
+ (Tom Lane)
+ </para>
+
+ <para>
+ Aside from not supporting all standard
+ <link linkend="guc-lc-monetary"><varname>lc_monetary</></link>
+ formatting options, the input and output functions were inconsistent,
+ meaning there were locales in which dumped <type>money</> values could
+ not be re-read.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Don't let <link
+ linkend="guc-transform-null-equals"><varname>transform_null_equals</></link>
+ affect <literal>CASE foo WHEN NULL ...</> constructs
+ (Heikki Linnakangas)
+ </para>
+
+ <para>
+ <varname>transform_null_equals</> is only supposed to affect
+ <literal>foo = NULL</> expressions written directly by the user, not
+ equality checks generated internally by this form of <literal>CASE</>.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Change foreign-key trigger creation order to better support
+ self-referential foreign keys (Tom Lane)
+ </para>
+
+ <para>
+ For a cascading foreign key that references its own table, a row update
+ will fire both the <literal>ON UPDATE</> trigger and the
+ <literal>CHECK</> trigger as one event. The <literal>ON UPDATE</>
+ trigger must execute first, else the <literal>CHECK</> will check a
+ non-final state of the row and possibly throw an inappropriate error.
+ However, the firing order of these triggers is determined by their
+ names, which generally sort in creation order since the triggers have
+ auto-generated names following the convention
+ <quote>RI_ConstraintTrigger_NNNN</>. A proper fix would require
+ modifying that convention, which we will do in 9.2, but it seems risky
+ to change it in existing releases. So this patch just changes the
+ creation order of the triggers. Users encountering this type of error
+ should drop and re-create the foreign key constraint to get its
+ triggers into the right order.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Avoid floating-point underflow while tracking buffer allocation rate
+ (Greg Matthews)
+ </para>
+
+ <para>
+ While harmless in itself, on certain platforms this would result in
+ annoying kernel log messages.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Preserve configuration file name and line number values when starting
+ child processes under Windows (Tom Lane)
+ </para>
+
+ <para>
+ Formerly, these would not be displayed correctly in the
+ <structname>pg_settings</> view.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Preserve blank lines within commands in <application>psql</>'s command
+ history (Robert Haas)
+ </para>
+
+ <para>
+ The former behavior could cause problems if an empty line was removed
+ from within a string literal, for example.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix <application>pg_dump</> to dump user-defined casts between
+ auto-generated types, such as table rowtypes (Tom Lane)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Use the preferred version of <application>xsubpp</> to build PL/Perl,
+ not necessarily the operating system's main copy
+ (David Wheeler and Alex Hunsaker)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix incorrect coding in <filename>contrib/dict_int</> and
+ <filename>contrib/dict_xsyn</> (Tom Lane)
+ </para>
+
+ <para>
+ Some functions incorrectly assumed that memory returned by
+ <function>palloc()</> is guaranteed zeroed.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Honor query cancel interrupts promptly in <function>pgstatindex()</>
+ (Robert Haas)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Ensure VPATH builds properly install all server header files
+ (Peter Eisentraut)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Shorten file names reported in verbose error messages (Peter Eisentraut)
+ </para>
+
+ <para>
+ Regular builds have always reported just the name of the C file
+ containing the error message call, but VPATH builds formerly
+ reported an absolute path name.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix interpretation of Windows timezone names for Central America
+ (Tom Lane)
+ </para>
+
+ <para>
+ Map <quote>Central America Standard Time</> to <literal>CST6</>, not
+ <literal>CST6CDT</>, because DST is generally not observed anywhere in
+ Central America.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Update time zone data files to <application>tzdata</> release 2011n
+ for DST law changes in Brazil, Cuba, Fiji, Palestine, Russia, and Samoa;
+ also historical corrections for Alaska and British East Africa.
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
<sect1 id="release-8-4-9">
<title>Release 8.4.9</title>
diff --git a/doc/src/sgml/release-9.0.sgml b/doc/src/sgml/release-9.0.sgml
index 676191f2738..4f8ec5116a4 100644
--- a/doc/src/sgml/release-9.0.sgml
+++ b/doc/src/sgml/release-9.0.sgml
@@ -1,6 +1,390 @@
<!-- doc/src/sgml/release-9.0.sgml -->
<!-- See header comment in release.sgml about typical markup -->
+ <sect1 id="release-9-0-6">
+ <title>Release 9.0.6</title>
+
+ <note>
+ <title>Release Date</title>
+ <simpara>2011-12-05</simpara>
+ </note>
+
+ <para>
+ This release contains a variety of fixes from 9.0.5.
+ 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.6</title>
+
+ <para>
+ A dump/restore is not required for those running 9.0.X.
+ </para>
+
+ <para>
+ However, a longstanding error was discovered in the definition of the
+ <literal>information_schema.referential_constraints</> view. If you
+ rely on correct results from that view, you should replace its
+ definition as explained in the first changelog item below.
+ </para>
+
+ <para>
+ Also, 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 bugs in <literal>information_schema.referential_constraints</> view
+ (Tom Lane)
+ </para>
+
+ <para>
+ This view was being insufficiently careful about matching the
+ foreign-key constraint to the depended-on primary or unique key
+ constraint. That could result in failure to show a foreign key
+ constraint at all, or showing it multiple times, or claiming that it
+ depends on a different constraint than the one it really does.
+ </para>
+
+ <para>
+ Since the view definition is installed by <application>initdb</>,
+ merely upgrading will not fix the problem. If you need to fix this
+ in an existing installation, you can (as a superuser) drop the
+ <literal>information_schema</> schema then re-create it by sourcing
+ <filename><replaceable>SHAREDIR</>/information_schema.sql</filename>.
+ (Run <literal>pg_config --sharedir</> if you're uncertain where
+ <replaceable>SHAREDIR</> is.) This must be repeated in each database
+ to be fixed.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix possible crash during <command>UPDATE</> or <command>DELETE</> that
+ joins to the output of a scalar-returning function (Tom Lane)
+ </para>
+
+ <para>
+ A crash could only occur if the target row had been concurrently
+ updated, so this problem surfaced only intermittently.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix incorrect replay of WAL records for GIN index updates
+ (Tom Lane)
+ </para>
+
+ <para>
+ This could result in transiently failing to find index entries after
+ a crash, or on a hot-standby server. The problem would be repaired
+ by the next <command>VACUUM</> of the index, however.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix TOAST-related data corruption during <literal>CREATE TABLE dest AS
+ SELECT * FROM src</> or <literal>INSERT INTO dest SELECT * FROM src</>
+ (Tom Lane)
+ </para>
+
+ <para>
+ If a table has been modified by <command>ALTER TABLE ADD COLUMN</>,
+ attempts to copy its data verbatim to another table could produce
+ corrupt results in certain corner cases.
+ The problem can only manifest in this precise form in 8.4 and later,
+ but we patched earlier versions as well in case there are other code
+ paths that could trigger the same bug.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix possible failures during hot standby startup (Simon Riggs)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Start hot standby faster when initial snapshot is incomplete
+ (Simon Riggs)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix race condition during toast table access from stale syscache entries
+ (Tom Lane)
+ </para>
+
+ <para>
+ The typical symptom was transient errors like <quote>missing chunk
+ number 0 for toast value NNNNN in pg_toast_2619</>, where the cited
+ toast table would always belong to a system catalog.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Track dependencies of functions on items used in parameter default
+ expressions (Tom Lane)
+ </para>
+
+ <para>
+ Previously, a referenced object could be dropped without having dropped
+ or modified the function, leading to misbehavior when the function was
+ used. Note that merely installing this update will not fix the missing
+ dependency entries; to do that, you'd need to <command>CREATE OR
+ REPLACE</> each such function afterwards. If you have functions whose
+ defaults depend on non-built-in objects, doing so is recommended.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Allow inlining of set-returning SQL functions with multiple OUT
+ parameters (Tom Lane)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Don't trust deferred-unique indexes for join removal (Tom Lane and Marti
+ Raudsepp)
+ </para>
+
+ <para>
+ A deferred uniqueness constraint might not hold intra-transaction,
+ so assuming that it does could give incorrect query results.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Make <function>DatumGetInetP()</> unpack inet datums that have a 1-byte
+ header, and add a new macro, <function>DatumGetInetPP()</>, that does
+ not (Heikki Linnakangas)
+ </para>
+
+ <para>
+ This change affects no core code, but might prevent crashes in add-on
+ code that expects <function>DatumGetInetP()</> to produce an unpacked
+ datum as per usual convention.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Improve locale support in <type>money</> type's input and output
+ (Tom Lane)
+ </para>
+
+ <para>
+ Aside from not supporting all standard
+ <link linkend="guc-lc-monetary"><varname>lc_monetary</></link>
+ formatting options, the input and output functions were inconsistent,
+ meaning there were locales in which dumped <type>money</> values could
+ not be re-read.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Don't let <link
+ linkend="guc-transform-null-equals"><varname>transform_null_equals</></link>
+ affect <literal>CASE foo WHEN NULL ...</> constructs
+ (Heikki Linnakangas)
+ </para>
+
+ <para>
+ <varname>transform_null_equals</> is only supposed to affect
+ <literal>foo = NULL</> expressions written directly by the user, not
+ equality checks generated internally by this form of <literal>CASE</>.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Change foreign-key trigger creation order to better support
+ self-referential foreign keys (Tom Lane)
+ </para>
+
+ <para>
+ For a cascading foreign key that references its own table, a row update
+ will fire both the <literal>ON UPDATE</> trigger and the
+ <literal>CHECK</> trigger as one event. The <literal>ON UPDATE</>
+ trigger must execute first, else the <literal>CHECK</> will check a
+ non-final state of the row and possibly throw an inappropriate error.
+ However, the firing order of these triggers is determined by their
+ names, which generally sort in creation order since the triggers have
+ auto-generated names following the convention
+ <quote>RI_ConstraintTrigger_NNNN</>. A proper fix would require
+ modifying that convention, which we will do in 9.2, but it seems risky
+ to change it in existing releases. So this patch just changes the
+ creation order of the triggers. Users encountering this type of error
+ should drop and re-create the foreign key constraint to get its
+ triggers into the right order.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Avoid floating-point underflow while tracking buffer allocation rate
+ (Greg Matthews)
+ </para>
+
+ <para>
+ While harmless in itself, on certain platforms this would result in
+ annoying kernel log messages.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Preserve configuration file name and line number values when starting
+ child processes under Windows (Tom Lane)
+ </para>
+
+ <para>
+ Formerly, these would not be displayed correctly in the
+ <structname>pg_settings</> view.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix incorrect field alignment in <application>ecpg</>'s SQLDA area
+ (Zoltan Boszormenyi)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Preserve blank lines within commands in <application>psql</>'s command
+ history (Robert Haas)
+ </para>
+
+ <para>
+ The former behavior could cause problems if an empty line was removed
+ from within a string literal, for example.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix <application>pg_dump</> to dump user-defined casts between
+ auto-generated types, such as table rowtypes (Tom Lane)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Assorted fixes for <application>pg_upgrade</> (Bruce Momjian)
+ </para>
+
+ <para>
+ Handle exclusion constraints correctly, avoid failures on Windows,
+ don't complain about mismatched toast table names in 8.4 databases.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Use the preferred version of <application>xsubpp</> to build PL/Perl,
+ not necessarily the operating system's main copy
+ (David Wheeler and Alex Hunsaker)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix incorrect coding in <filename>contrib/dict_int</> and
+ <filename>contrib/dict_xsyn</> (Tom Lane)
+ </para>
+
+ <para>
+ Some functions incorrectly assumed that memory returned by
+ <function>palloc()</> is guaranteed zeroed.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix assorted errors in <filename>contrib/unaccent</>'s configuration
+ file parsing (Tom Lane)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Honor query cancel interrupts promptly in <function>pgstatindex()</>
+ (Robert Haas)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix incorrect quoting of log file name in Mac OS X start script
+ (Sidar Lopez)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Ensure VPATH builds properly install all server header files
+ (Peter Eisentraut)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Shorten file names reported in verbose error messages (Peter Eisentraut)
+ </para>
+
+ <para>
+ Regular builds have always reported just the name of the C file
+ containing the error message call, but VPATH builds formerly
+ reported an absolute path name.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix interpretation of Windows timezone names for Central America
+ (Tom Lane)
+ </para>
+
+ <para>
+ Map <quote>Central America Standard Time</> to <literal>CST6</>, not
+ <literal>CST6CDT</>, because DST is generally not observed anywhere in
+ Central America.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Update time zone data files to <application>tzdata</> release 2011n
+ for DST law changes in Brazil, Cuba, Fiji, Palestine, Russia, and Samoa;
+ also historical corrections for Alaska and British East Africa.
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
<sect1 id="release-9-0-5">
<title>Release 9.0.5</title>