summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2012-02-22 18:11:51 -0500
committerTom Lane <tgl@sss.pgh.pa.us>2012-02-22 18:12:35 -0500
commitf209a0c559a68c77144ef99ea692b8b65f50c47e (patch)
tree567449af7da0e270ee03fda7887371c5cc0a3a60
parentcfd1c382f0e85dea157ec6d56352d0513f7b7f0f (diff)
downloadpostgresql-f209a0c559a68c77144ef99ea692b8b65f50c47e.tar.gz
Draft release notes for 9.1.3, 9.0.7, 8.4.11, 8.3.18.
-rw-r--r--doc/src/sgml/release-8.3.sgml258
-rw-r--r--doc/src/sgml/release-8.4.sgml312
-rw-r--r--doc/src/sgml/release-9.0.sgml466
-rw-r--r--doc/src/sgml/release-9.1.sgml580
4 files changed, 1616 insertions, 0 deletions
diff --git a/doc/src/sgml/release-8.3.sgml b/doc/src/sgml/release-8.3.sgml
index ec1880d20f..e80743f463 100644
--- a/doc/src/sgml/release-8.3.sgml
+++ b/doc/src/sgml/release-8.3.sgml
@@ -1,6 +1,264 @@
<!-- doc/src/sgml/release-8.3.sgml -->
<!-- See header comment in release.sgml about typical markup -->
+ <sect1 id="release-8-3-18">
+ <title>Release 8.3.18</title>
+
+ <note>
+ <title>Release Date</title>
+ <simpara>2012-02-27</simpara>
+ </note>
+
+ <para>
+ This release contains a variety of fixes from 8.3.17.
+ 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.18</title>
+
+ <para>
+ A dump/restore is not required for those running 8.3.X.
+ </para>
+
+ <para>
+ However, if you are upgrading from a version earlier than 8.3.17,
+ see the release notes for 8.3.17.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Changes</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Fix btree index corruption from insertions concurrent with vacuuming
+ (Tom Lane)
+ </para>
+
+ <para>
+ An index page split caused by an insertion could sometimes cause a
+ concurrently-running <command>VACUUM</> to miss removing index entries
+ that it should remove. After the corresponding table rows are removed,
+ the dangling index entries would cause errors (such as <quote>could not
+ read block N in file ...</>) or worse, silently wrong query results
+ after unrelated rows are re-inserted at the now-free table locations.
+ This bug has been present since release 8.2, but occurs so infrequently
+ that it was not diagnosed until now. If you have reason to suspect
+ that it has happened in your database, reindexing the affected index
+ will fix things.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Allow non-existent values for some settings in <command>ALTER
+ USER/DATABASE SET</> (Heikki Linnakangas)
+ </para>
+
+ <para>
+ Allow <varname>default_text_search_config</>,
+ <varname>default_tablespace</>, and <varname>temp_tablespaces</> to be
+ set to names that are not known. This is because they might be known
+ in another database where the setting is intended to be used, or for the
+ tablespace cases because the tablespace might not be created yet. The
+ same issue was previously recognized for <varname>search_path</>, and
+ these settings now act like that one.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Track the OID counter correctly during WAL replay, even when it wraps
+ around (Tom Lane)
+ </para>
+
+ <para>
+ Previously the OID counter would remain stuck at a high value until the
+ system exited replay mode. The practical consequences of that are
+ usually nil, but there are scenarios wherein a standby server that's
+ been promoted to master might take a long time to advance the OID
+ counter to a reasonable value once values are needed.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix regular expression back-references with <literal>*</> attached
+ (Tom Lane)
+ </para>
+
+ <para>
+ Rather than enforcing an exact string match, the code would effectively
+ accept any string that satisfies the pattern sub-expression referenced
+ by the back-reference symbol.
+ </para>
+
+ <para>
+ A similar problem still afflicts back-references that are embedded in a
+ larger quantified expression, rather than being the immediate subject
+ of the quantifier. This will be addressed in a future
+ <productname>PostgreSQL</> release.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix recently-introduced memory leak in processing of
+ <type>inet</>/<type>cidr</> values (Heikki Linnakangas)
+ </para>
+
+ <para>
+ A patch in the December 2011 releases of <productname>PostgreSQL</>
+ caused memory leakage in these operations, which could be significant
+ in scenarios such as building a btree index on such a column.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Avoid double close of file handle in syslogger on Windows (MauMau)
+ </para>
+
+ <para>
+ Ordinarily this error was invisible, but it would cause an exception
+ when running on a debug version of Windows.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix I/O-conversion-related memory leaks in plpgsql
+ (Andres Freund, Jan Urbanski, Tom Lane)
+ </para>
+
+ <para>
+ Certain operations would leak memory until the end of the current
+ function.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Improve <application>pg_dump</>'s handling of inherited table columns
+ (Tom Lane)
+ </para>
+
+ <para>
+ <application>pg_dump</> mishandled situations where a child column has
+ a different default expression than its parent column. If the default
+ is textually identical to the parent's default, but not actually the
+ same (for instance, because of schema search path differences) it would
+ not be recognized as different, so that after dump and restore the
+ child would be allowed to inherit the parent's default. Child columns
+ that are <literal>NOT NULL</> where their parent is not could also be
+ restored subtly incorrectly.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix <application>pg_restore</>'s direct-to-database mode for
+ INSERT-style table data (Tom Lane)
+ </para>
+
+ <para>
+ Direct-to-database restores from archive files made with
+ <option>--inserts</> or <option>--column-inserts</> options fail when
+ using <application>pg_restore</> from a release dated September or
+ December 2011, as a result of an oversight in a fix for another
+ problem. The archive file itself is not at fault, and text-mode
+ output is okay.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix error in <filename>contrib/intarray</>'s <literal>int[] &amp;
+ int[]</> operator (Guillaume Lelarge)
+ </para>
+
+ <para>
+ If the smallest integer the two input arrays have in common is 1,
+ and there are smaller values in either array, then 1 would be
+ incorrectly omitted from the result.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix error detection in <filename>contrib/pgcrypto</>'s
+ <function>encrypt_iv()</> and <function>decrypt_iv()</>
+ (Marko Kreen)
+ </para>
+
+ <para>
+ These functions failed to report certain types of invalid-input errors,
+ and would instead return random garbage values for incorrect input.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix one-byte buffer overrun in <filename>contrib/test_parser</>
+ (Paul Guyot)
+ </para>
+
+ <para>
+ The code would try to read one more byte than it should, which would
+ crash in corner cases.
+ Since <filename>contrib/test_parser</> is only example code, this is
+ not a security issue in itself, but bad example code is still bad.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Use <function>__sync_lock_test_and_set()</> for spinlocks on ARM, if
+ available (Martin Pitt)
+ </para>
+
+ <para>
+ This function replaces our previous use of the <literal>SWPB</>
+ instruction, which is deprecated and not available on ARMv6 and later.
+ Reports suggest that the old code doesn't fail in an obvious way on
+ recent ARM boards, but simply doesn't interlock concurrent accesses,
+ leading to bizarre failures in multiprocess operation.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Use <option>-fexcess-precision=standard</> option when building with
+ gcc versions that accept it (Andrew Dunstan)
+ </para>
+
+ <para>
+ This prevents assorted scenarios wherein recent versions of gcc will
+ produce creative results.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Allow use of threaded Python on FreeBSD (Chris Rees)
+ </para>
+
+ <para>
+ Our configure script previously believed that this combination wouldn't
+ work; but FreeBSD fixed the problem, so remove that error check.
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
<sect1 id="release-8-3-17">
<title>Release 8.3.17</title>
diff --git a/doc/src/sgml/release-8.4.sgml b/doc/src/sgml/release-8.4.sgml
index 27e1e6c7b1..2cddc5ec0c 100644
--- a/doc/src/sgml/release-8.4.sgml
+++ b/doc/src/sgml/release-8.4.sgml
@@ -1,6 +1,318 @@
<!-- doc/src/sgml/release-8.4.sgml -->
<!-- See header comment in release.sgml about typical markup -->
+ <sect1 id="release-8-4-11">
+ <title>Release 8.4.11</title>
+
+ <note>
+ <title>Release Date</title>
+ <simpara>2012-02-27</simpara>
+ </note>
+
+ <para>
+ This release contains a variety of fixes from 8.4.10.
+ 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.11</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.10,
+ see the release notes for 8.4.10.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Changes</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Fix btree index corruption from insertions concurrent with vacuuming
+ (Tom Lane)
+ </para>
+
+ <para>
+ An index page split caused by an insertion could sometimes cause a
+ concurrently-running <command>VACUUM</> to miss removing index entries
+ that it should remove. After the corresponding table rows are removed,
+ the dangling index entries would cause errors (such as <quote>could not
+ read block N in file ...</>) or worse, silently wrong query results
+ after unrelated rows are re-inserted at the now-free table locations.
+ This bug has been present since release 8.2, but occurs so infrequently
+ that it was not diagnosed until now. If you have reason to suspect
+ that it has happened in your database, reindexing the affected index
+ will fix things.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Update per-column permissions, not only per-table permissions, when
+ changing table owner (Tom Lane)
+ </para>
+
+ <para>
+ Failure to do this meant that any previously granted column permissions
+ were still shown as having been granted by the old owner. This meant
+ that neither the new owner nor a superuser could revoke the
+ now-untraceable-to-table-owner permissions.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Allow non-existent values for some settings in <command>ALTER
+ USER/DATABASE SET</> (Heikki Linnakangas)
+ </para>
+
+ <para>
+ Allow <varname>default_text_search_config</>,
+ <varname>default_tablespace</>, and <varname>temp_tablespaces</> to be
+ set to names that are not known. This is because they might be known
+ in another database where the setting is intended to be used, or for the
+ tablespace cases because the tablespace might not be created yet. The
+ same issue was previously recognized for <varname>search_path</>, and
+ these settings now act like that one.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Avoid crashing when we have problems deleting table files post-commit
+ (Tom Lane)
+ </para>
+
+ <para>
+ Dropping a table should lead to deleting the underlying disk files only
+ after the transaction commits. In event of failure then (for instance,
+ because of wrong file permissions) the code is supposed to just emit a
+ warning message and go on, since it's too late to abort the
+ transaction. This logic got broken as of release 8.4, causing such
+ situations to result in a PANIC and an unrestartable database.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Track the OID counter correctly during WAL replay, even when it wraps
+ around (Tom Lane)
+ </para>
+
+ <para>
+ Previously the OID counter would remain stuck at a high value until the
+ system exited replay mode. The practical consequences of that are
+ usually nil, but there are scenarios wherein a standby server that's
+ been promoted to master might take a long time to advance the OID
+ counter to a reasonable value once values are needed.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix regular expression back-references with <literal>*</> attached
+ (Tom Lane)
+ </para>
+
+ <para>
+ Rather than enforcing an exact string match, the code would effectively
+ accept any string that satisfies the pattern sub-expression referenced
+ by the back-reference symbol.
+ </para>
+
+ <para>
+ A similar problem still afflicts back-references that are embedded in a
+ larger quantified expression, rather than being the immediate subject
+ of the quantifier. This will be addressed in a future
+ <productname>PostgreSQL</> release.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix recently-introduced memory leak in processing of
+ <type>inet</>/<type>cidr</> values (Heikki Linnakangas)
+ </para>
+
+ <para>
+ A patch in the December 2011 releases of <productname>PostgreSQL</>
+ caused memory leakage in these operations, which could be significant
+ in scenarios such as building a btree index on such a column.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix dangling pointer after <command>CREATE TABLE AS</>/<command>SELECT
+ INTO</> in a SQL-language function (Tom Lane)
+ </para>
+
+ <para>
+ In most cases this only led to an assertion failure in assert-enabled
+ builds, but worse consequences seem possible.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Avoid double close of file handle in syslogger on Windows (MauMau)
+ </para>
+
+ <para>
+ Ordinarily this error was invisible, but it would cause an exception
+ when running on a debug version of Windows.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix I/O-conversion-related memory leaks in plpgsql
+ (Andres Freund, Jan Urbanski, Tom Lane)
+ </para>
+
+ <para>
+ Certain operations would leak memory until the end of the current
+ function.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Improve <application>pg_dump</>'s handling of inherited table columns
+ (Tom Lane)
+ </para>
+
+ <para>
+ <application>pg_dump</> mishandled situations where a child column has
+ a different default expression than its parent column. If the default
+ is textually identical to the parent's default, but not actually the
+ same (for instance, because of schema search path differences) it would
+ not be recognized as different, so that after dump and restore the
+ child would be allowed to inherit the parent's default. Child columns
+ that are <literal>NOT NULL</> where their parent is not could also be
+ restored subtly incorrectly.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix <application>pg_restore</>'s direct-to-database mode for
+ INSERT-style table data (Tom Lane)
+ </para>
+
+ <para>
+ Direct-to-database restores from archive files made with
+ <option>--inserts</> or <option>--column-inserts</> options fail when
+ using <application>pg_restore</> from a release dated September or
+ December 2011, as a result of an oversight in a fix for another
+ problem. The archive file itself is not at fault, and text-mode
+ output is okay.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Allow <literal>AT</> option in <application>ecpg</>
+ <literal>DEALLOCATE</> statements (Michael Meskes)
+ </para>
+
+ <para>
+ The infrastructure to support this has been there for awhile, but
+ through an oversight there was still an error check rejecting the case.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix error in <filename>contrib/intarray</>'s <literal>int[] &amp;
+ int[]</> operator (Guillaume Lelarge)
+ </para>
+
+ <para>
+ If the smallest integer the two input arrays have in common is 1,
+ and there are smaller values in either array, then 1 would be
+ incorrectly omitted from the result.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix error detection in <filename>contrib/pgcrypto</>'s
+ <function>encrypt_iv()</> and <function>decrypt_iv()</>
+ (Marko Kreen)
+ </para>
+
+ <para>
+ These functions failed to report certain types of invalid-input errors,
+ and would instead return random garbage values for incorrect input.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix one-byte buffer overrun in <filename>contrib/test_parser</>
+ (Paul Guyot)
+ </para>
+
+ <para>
+ The code would try to read one more byte than it should, which would
+ crash in corner cases.
+ Since <filename>contrib/test_parser</> is only example code, this is
+ not a security issue in itself, but bad example code is still bad.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Use <function>__sync_lock_test_and_set()</> for spinlocks on ARM, if
+ available (Martin Pitt)
+ </para>
+
+ <para>
+ This function replaces our previous use of the <literal>SWPB</>
+ instruction, which is deprecated and not available on ARMv6 and later.
+ Reports suggest that the old code doesn't fail in an obvious way on
+ recent ARM boards, but simply doesn't interlock concurrent accesses,
+ leading to bizarre failures in multiprocess operation.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Use <option>-fexcess-precision=standard</> option when building with
+ gcc versions that accept it (Andrew Dunstan)
+ </para>
+
+ <para>
+ This prevents assorted scenarios wherein recent versions of gcc will
+ produce creative results.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Allow use of threaded Python on FreeBSD (Chris Rees)
+ </para>
+
+ <para>
+ Our configure script previously believed that this combination wouldn't
+ work; but FreeBSD fixed the problem, so remove that error check.
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
<sect1 id="release-8-4-10">
<title>Release 8.4.10</title>
diff --git a/doc/src/sgml/release-9.0.sgml b/doc/src/sgml/release-9.0.sgml
index 4f8ec5116a..7b29590bb1 100644
--- a/doc/src/sgml/release-9.0.sgml
+++ b/doc/src/sgml/release-9.0.sgml
@@ -1,6 +1,472 @@
<!-- doc/src/sgml/release-9.0.sgml -->
<!-- See header comment in release.sgml about typical markup -->
+ <sect1 id="release-9-0-7">
+ <title>Release 9.0.7</title>
+
+ <note>
+ <title>Release Date</title>
+ <simpara>2012-02-27</simpara>
+ </note>
+
+ <para>
+ This release contains a variety of fixes from 9.0.6.
+ 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.7</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.6,
+ see the release notes for 9.0.6.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Changes</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Fix btree index corruption from insertions concurrent with vacuuming
+ (Tom Lane)
+ </para>
+
+ <para>
+ An index page split caused by an insertion could sometimes cause a
+ concurrently-running <command>VACUUM</> to miss removing index entries
+ that it should remove. After the corresponding table rows are removed,
+ the dangling index entries would cause errors (such as <quote>could not
+ read block N in file ...</>) or worse, silently wrong query results
+ after unrelated rows are re-inserted at the now-free table locations.
+ This bug has been present since release 8.2, but occurs so infrequently
+ that it was not diagnosed until now. If you have reason to suspect
+ that it has happened in your database, reindexing the affected index
+ will fix things.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix transient zeroing of shared buffers during WAL replay (Tom Lane)
+ </para>
+
+ <para>
+ The replay logic would sometimes zero and refill a shared buffer, so
+ that the contents were transiently invalid. In hot standby mode this
+ can result in a query that's executing in parallel seeing garbage data.
+ Various symptoms could result from that, but the most common one seems
+ to be <quote>invalid memory alloc request size</>.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix postmaster to attempt restart after a hot-standby crash (Tom Lane)
+ </para>
+
+ <para>
+ A logic error caused the postmaster to terminate, rather than attempt
+ to restart the cluster, if any backend process crashed while operating
+ in hot standby mode.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix <command>CLUSTER</>/<command>VACUUM FULL</> handling of toast
+ values owned by recently-updated rows (Tom Lane)
+ </para>
+
+ <para>
+ This oversight could lead to <quote>duplicate key value violates unique
+ constraint</> errors being reported against the toast table's index
+ during one of these commands.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Update per-column permissions, not only per-table permissions, when
+ changing table owner (Tom Lane)
+ </para>
+
+ <para>
+ Failure to do this meant that any previously granted column permissions
+ were still shown as having been granted by the old owner. This meant
+ that neither the new owner nor a superuser could revoke the
+ now-untraceable-to-table-owner permissions.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Support foreign data wrappers and foreign servers in
+ <command>REASSIGN OWNED</> (Alvaro Herrera)
+ </para>
+
+ <para>
+ This command failed with <quote>unexpected classid</> errors if
+ it needed to change the ownership of any such objects.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Allow non-existent values for some settings in <command>ALTER
+ USER/DATABASE SET</> (Heikki Linnakangas)
+ </para>
+
+ <para>
+ Allow <varname>default_text_search_config</>,
+ <varname>default_tablespace</>, and <varname>temp_tablespaces</> to be
+ set to names that are not known. This is because they might be known
+ in another database where the setting is intended to be used, or for the
+ tablespace cases because the tablespace might not be created yet. The
+ same issue was previously recognized for <varname>search_path</>, and
+ these settings now act like that one.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Avoid crashing when we have problems deleting table files post-commit
+ (Tom Lane)
+ </para>
+
+ <para>
+ Dropping a table should lead to deleting the underlying disk files only
+ after the transaction commits. In event of failure then (for instance,
+ because of wrong file permissions) the code is supposed to just emit a
+ warning message and go on, since it's too late to abort the
+ transaction. This logic got broken as of release 8.4, causing such
+ situations to result in a PANIC and an unrestartable database.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Recover from errors occurring during WAL replay of <command>DROP
+ TABLESPACE</> (Tom Lane)
+ </para>
+
+ <para>
+ Replay will attempt to remove the tablespace's directories, but there
+ are various reasons why this might fail (for example, incorrect
+ ownership or permissions on those directories). Formerly the replay
+ code would panic, rendering the database unrestartable without manual
+ intervention. It seems better to log the problem and continue, since
+ the only consequence of failure to remove the directories is some
+ wasted disk space.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix race condition in logging AccessExclusiveLocks for hot standby
+ (Simon Riggs)
+ </para>
+
+ <para>
+ Sometimes a lock would be logged as being held by <quote>transaction
+ zero</>. This is at least known to produce assertion failures on
+ slave servers, and might be the cause of more serious problems.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Track the OID counter correctly during WAL replay, even when it wraps
+ around (Tom Lane)
+ </para>
+
+ <para>
+ Previously the OID counter would remain stuck at a high value until the
+ system exited replay mode. The practical consequences of that are
+ usually nil, but there are scenarios wherein a standby server that's
+ been promoted to master might take a long time to advance the OID
+ counter to a reasonable value once values are needed.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Prevent emitting misleading <quote>consistent recovery state reached</>
+ log message at the beginning of crash recovery (Heikki Linnakangas)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix initial value of
+ <structname>pg_stat_replication</>.<structfield>replay_location</>
+ (Fujii Masao)
+ </para>
+
+ <para>
+ Previously, the value shown would be wrong until at least one WAL
+ record had been replayed.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix regular expression back-references with <literal>*</> attached
+ (Tom Lane)
+ </para>
+
+ <para>
+ Rather than enforcing an exact string match, the code would effectively
+ accept any string that satisfies the pattern sub-expression referenced
+ by the back-reference symbol.
+ </para>
+
+ <para>
+ A similar problem still afflicts back-references that are embedded in a
+ larger quantified expression, rather than being the immediate subject
+ of the quantifier. This will be addressed in a future
+ <productname>PostgreSQL</> release.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix recently-introduced memory leak in processing of
+ <type>inet</>/<type>cidr</> values (Heikki Linnakangas)
+ </para>
+
+ <para>
+ A patch in the December 2011 releases of <productname>PostgreSQL</>
+ caused memory leakage in these operations, which could be significant
+ in scenarios such as building a btree index on such a column.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix dangling pointer after <command>CREATE TABLE AS</>/<command>SELECT
+ INTO</> in a SQL-language function (Tom Lane)
+ </para>
+
+ <para>
+ In most cases this only led to an assertion failure in assert-enabled
+ builds, but worse consequences seem possible.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Avoid double close of file handle in syslogger on Windows (MauMau)
+ </para>
+
+ <para>
+ Ordinarily this error was invisible, but it would cause an exception
+ when running on a debug version of Windows.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix I/O-conversion-related memory leaks in plpgsql
+ (Andres Freund, Jan Urbanski, Tom Lane)
+ </para>
+
+ <para>
+ Certain operations would leak memory until the end of the current
+ function.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Improve <application>pg_dump</>'s handling of inherited table columns
+ (Tom Lane)
+ </para>
+
+ <para>
+ <application>pg_dump</> mishandled situations where a child column has
+ a different default expression than its parent column. If the default
+ is textually identical to the parent's default, but not actually the
+ same (for instance, because of schema search path differences) it would
+ not be recognized as different, so that after dump and restore the
+ child would be allowed to inherit the parent's default. Child columns
+ that are <literal>NOT NULL</> where their parent is not could also be
+ restored subtly incorrectly.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix <application>pg_restore</>'s direct-to-database mode for
+ INSERT-style table data (Tom Lane)
+ </para>
+
+ <para>
+ Direct-to-database restores from archive files made with
+ <option>--inserts</> or <option>--column-inserts</> options fail when
+ using <application>pg_restore</> from a release dated September or
+ December 2011, as a result of an oversight in a fix for another
+ problem. The archive file itself is not at fault, and text-mode
+ output is okay.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Allow <application>pg_upgrade</> to process tables containing
+ <type>regclass</> columns (Bruce Momjian)
+ </para>
+
+ <para>
+ Since <application>pg_upgrade</> now takes care to preserve
+ <structname>pg_class</> OIDs, there was no longer any reason for this
+ restriction.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Make <application>libpq</> ignore <literal>ENOTDIR</> errors
+ when looking for an SSL client certificate file
+ (Magnus Hagander)
+ </para>
+
+ <para>
+ This allows SSL connections to be established, though without a
+ certificate, even when the user's home directory is set to something
+ like <literal>/dev/null</>.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix some more field alignment issues in <application>ecpg</>'s SQLDA area
+ (Zoltan Boszormenyi)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Allow <literal>AT</> option in <application>ecpg</>
+ <literal>DEALLOCATE</> statements (Michael Meskes)
+ </para>
+
+ <para>
+ The infrastructure to support this has been there for awhile, but
+ through an oversight there was still an error check rejecting the case.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Do not use the variable name when defining a varchar structure in ecpg
+ (Michael Meskes)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix <filename>contrib/auto_explain</>'s JSON output mode to produce
+ valid JSON (Andrew Dunstan)
+ </para>
+
+ <para>
+ The output used brackets at the top level, when it should have used
+ braces.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix error in <filename>contrib/intarray</>'s <literal>int[] &amp;
+ int[]</> operator (Guillaume Lelarge)
+ </para>
+
+ <para>
+ If the smallest integer the two input arrays have in common is 1,
+ and there are smaller values in either array, then 1 would be
+ incorrectly omitted from the result.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix error detection in <filename>contrib/pgcrypto</>'s
+ <function>encrypt_iv()</> and <function>decrypt_iv()</>
+ (Marko Kreen)
+ </para>
+
+ <para>
+ These functions failed to report certain types of invalid-input errors,
+ and would instead return random garbage values for incorrect input.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix one-byte buffer overrun in <filename>contrib/test_parser</>
+ (Paul Guyot)
+ </para>
+
+ <para>
+ The code would try to read one more byte than it should, which would
+ crash in corner cases.
+ Since <filename>contrib/test_parser</> is only example code, this is
+ not a security issue in itself, but bad example code is still bad.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Use <function>__sync_lock_test_and_set()</> for spinlocks on ARM, if
+ available (Martin Pitt)
+ </para>
+
+ <para>
+ This function replaces our previous use of the <literal>SWPB</>
+ instruction, which is deprecated and not available on ARMv6 and later.
+ Reports suggest that the old code doesn't fail in an obvious way on
+ recent ARM boards, but simply doesn't interlock concurrent accesses,
+ leading to bizarre failures in multiprocess operation.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Use <option>-fexcess-precision=standard</> option when building with
+ gcc versions that accept it (Andrew Dunstan)
+ </para>
+
+ <para>
+ This prevents assorted scenarios wherein recent versions of gcc will
+ produce creative results.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Allow use of threaded Python on FreeBSD (Chris Rees)
+ </para>
+
+ <para>
+ Our configure script previously believed that this combination wouldn't
+ work; but FreeBSD fixed the problem, so remove that error check.
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
<sect1 id="release-9-0-6">
<title>Release 9.0.6</title>
diff --git a/doc/src/sgml/release-9.1.sgml b/doc/src/sgml/release-9.1.sgml
index 8832a4a5d8..46abbec10a 100644
--- a/doc/src/sgml/release-9.1.sgml
+++ b/doc/src/sgml/release-9.1.sgml
@@ -1,6 +1,586 @@
<!-- doc/src/sgml/release-9.1.sgml -->
<!-- See header comment in release.sgml about typical markup -->
+ <sect1 id="release-9-1-3">
+ <title>Release 9.1.3</title>
+
+ <note>
+ <title>Release Date</title>
+ <simpara>2012-02-27</simpara>
+ </note>
+
+ <para>
+ This release contains a variety of fixes from 9.1.2.
+ 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.3</title>
+
+ <para>
+ A dump/restore is not required for those running 9.1.X.
+ </para>
+
+ <para>
+ However, if you are upgrading from a version earlier than 9.1.2,
+ see the release notes for 9.1.2.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Changes</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Fix btree index corruption from insertions concurrent with vacuuming
+ (Tom Lane)
+ </para>
+
+ <para>
+ An index page split caused by an insertion could sometimes cause a
+ concurrently-running <command>VACUUM</> to miss removing index entries
+ that it should remove. After the corresponding table rows are removed,
+ the dangling index entries would cause errors (such as <quote>could not
+ read block N in file ...</>) or worse, silently wrong query results
+ after unrelated rows are re-inserted at the now-free table locations.
+ This bug has been present since release 8.2, but occurs so infrequently
+ that it was not diagnosed until now. If you have reason to suspect
+ that it has happened in your database, reindexing the affected index
+ will fix things.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix transient zeroing of shared buffers during WAL replay (Tom Lane)
+ </para>
+
+ <para>
+ The replay logic would sometimes zero and refill a shared buffer, so
+ that the contents were transiently invalid. In hot standby mode this
+ can result in a query that's executing in parallel seeing garbage data.
+ Various symptoms could result from that, but the most common one seems
+ to be <quote>invalid memory alloc request size</>.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix handling of data-modifying <literal>WITH</> subplans in
+ <literal>READ COMMITTED</> rechecking (Tom Lane)
+ </para>
+
+ <para>
+ A <literal>WITH</> clause containing
+ <command>INSERT</>/<command>UPDATE</>/<command>DELETE</> would crash
+ if the parent <command>UPDATE</> or <command>DELETE</> command needed
+ to be re-evaluated at one or more rows due to concurrent updates
+ in <literal>READ COMMITTED</> mode.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix corner case in SSI transaction cleanup
+ (Dan Ports)
+ </para>
+
+ <para>
+ When finishing up a read-write serializable transaction,
+ a crash could occur if all remaining active serializable transactions
+ are read-only.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix postmaster to attempt restart after a hot-standby crash (Tom Lane)
+ </para>
+
+ <para>
+ A logic error caused the postmaster to terminate, rather than attempt
+ to restart the cluster, if any backend process crashed while operating
+ in hot standby mode.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix <command>CLUSTER</>/<command>VACUUM FULL</> handling of toast
+ values owned by recently-updated rows (Tom Lane)
+ </para>
+
+ <para>
+ This oversight could lead to <quote>duplicate key value violates unique
+ constraint</> errors being reported against the toast table's index
+ during one of these commands.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Update per-column permissions, not only per-table permissions, when
+ changing table owner (Tom Lane)
+ </para>
+
+ <para>
+ Failure to do this meant that any previously granted column permissions
+ were still shown as having been granted by the old owner. This meant
+ that neither the new owner nor a superuser could revoke the
+ now-untraceable-to-table-owner permissions.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Support foreign data wrappers and foreign servers in
+ <command>REASSIGN OWNED</> (Alvaro Herrera)
+ </para>
+
+ <para>
+ This command failed with <quote>unexpected classid</> errors if
+ it needed to change the ownership of any such objects.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Allow non-existent values for some settings in <command>ALTER
+ USER/DATABASE SET</> (Heikki Linnakangas)
+ </para>
+
+ <para>
+ Allow <varname>default_text_search_config</>,
+ <varname>default_tablespace</>, and <varname>temp_tablespaces</> to be
+ set to names that are not known. This is because they might be known
+ in another database where the setting is intended to be used, or for the
+ tablespace cases because the tablespace might not be created yet. The
+ same issue was previously recognized for <varname>search_path</>, and
+ these settings now act like that one.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix <quote>unsupported node type</> error caused by <literal>COLLATE</>
+ in an <command>INSERT</> expression (Tom Lane)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Avoid crashing when we have problems deleting table files post-commit
+ (Tom Lane)
+ </para>
+
+ <para>
+ Dropping a table should lead to deleting the underlying disk files only
+ after the transaction commits. In event of failure then (for instance,
+ because of wrong file permissions) the code is supposed to just emit a
+ warning message and go on, since it's too late to abort the
+ transaction. This logic got broken as of release 8.4, causing such
+ situations to result in a PANIC and an unrestartable database.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Recover from errors occurring during WAL replay of <command>DROP
+ TABLESPACE</> (Tom Lane)
+ </para>
+
+ <para>
+ Replay will attempt to remove the tablespace's directories, but there
+ are various reasons why this might fail (for example, incorrect
+ ownership or permissions on those directories). Formerly the replay
+ code would panic, rendering the database unrestartable without manual
+ intervention. It seems better to log the problem and continue, since
+ the only consequence of failure to remove the directories is some
+ wasted disk space.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix race condition in logging AccessExclusiveLocks for hot standby
+ (Simon Riggs)
+ </para>
+
+ <para>
+ Sometimes a lock would be logged as being held by <quote>transaction
+ zero</>. This is at least known to produce assertion failures on
+ slave servers, and might be the cause of more serious problems.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Track the OID counter correctly during WAL replay, even when it wraps
+ around (Tom Lane)
+ </para>
+
+ <para>
+ Previously the OID counter would remain stuck at a high value until the
+ system exited replay mode. The practical consequences of that are
+ usually nil, but there are scenarios wherein a standby server that's
+ been promoted to master might take a long time to advance the OID
+ counter to a reasonable value once values are needed.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Prevent emitting misleading <quote>consistent recovery state reached</>
+ log message at the beginning of crash recovery (Heikki Linnakangas)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix initial value of
+ <structname>pg_stat_replication</>.<structfield>replay_location</>
+ (Fujii Masao)
+ </para>
+
+ <para>
+ Previously, the value shown would be wrong until at least one WAL
+ record had been replayed.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix regular expression back-references with <literal>*</> attached
+ (Tom Lane)
+ </para>
+
+ <para>
+ Rather than enforcing an exact string match, the code would effectively
+ accept any string that satisfies the pattern sub-expression referenced
+ by the back-reference symbol.
+ </para>
+
+ <para>
+ A similar problem still afflicts back-references that are embedded in a
+ larger quantified expression, rather than being the immediate subject
+ of the quantifier. This will be addressed in a future
+ <productname>PostgreSQL</> release.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix recently-introduced memory leak in processing of
+ <type>inet</>/<type>cidr</> values (Heikki Linnakangas)
+ </para>
+
+ <para>
+ A patch in the December 2011 releases of <productname>PostgreSQL</>
+ caused memory leakage in these operations, which could be significant
+ in scenarios such as building a btree index on such a column.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix planner's ability to push down index-expression restrictions
+ through <literal>UNION ALL</> (Tom Lane)
+ </para>
+
+ <para>
+ This type of optimization was inadvertently disabled by a fix for
+ another problem in 9.1.2.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix planning of <literal>WITH</> clauses referenced in
+ <command>UPDATE</>/<command>DELETE</> on an inherited table
+ (Tom Lane)
+ </para>
+
+ <para>
+ This bug led to <quote>could not find plan for CTE</> failures.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix GIN cost estimation to handle <literal>column IN (...)</>
+ index conditions (Marti Raudsepp)
+ </para>
+
+ <para>
+ This oversight would usually lead to crashes if such a condition could
+ be used with a GIN index.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Prevent assertion failure when exiting a session with an open, failed
+ transaction (Tom Lane)
+ </para>
+
+ <para>
+ This bug has no impact on normal builds with asserts not enabled.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix dangling pointer after <command>CREATE TABLE AS</>/<command>SELECT
+ INTO</> in a SQL-language function (Tom Lane)
+ </para>
+
+ <para>
+ In most cases this only led to an assertion failure in assert-enabled
+ builds, but worse consequences seem possible.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Avoid double close of file handle in syslogger on Windows (MauMau)
+ </para>
+
+ <para>
+ Ordinarily this error was invisible, but it would cause an exception
+ when running on a debug version of Windows.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix I/O-conversion-related memory leaks in plpgsql
+ (Andres Freund, Jan Urbanski, Tom Lane)
+ </para>
+
+ <para>
+ Certain operations would leak memory until the end of the current
+ function.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Work around bug in perl's SvPVutf8() function (Andrew Dunstan)
+ </para>
+
+ <para>
+ This function crashes when handed a typeglob or certain read-only
+ objects such as <literal>$^V</>. Make plperl avoid passing those to
+ it.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ In <application>pg_dump</>, don't dump contents of an extension's
+ configuration tables if the extension itself is not being dumped
+ (Tom Lane)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Improve <application>pg_dump</>'s handling of inherited table columns
+ (Tom Lane)
+ </para>
+
+ <para>
+ <application>pg_dump</> mishandled situations where a child column has
+ a different default expression than its parent column. If the default
+ is textually identical to the parent's default, but not actually the
+ same (for instance, because of schema search path differences) it would
+ not be recognized as different, so that after dump and restore the
+ child would be allowed to inherit the parent's default. Child columns
+ that are <literal>NOT NULL</> where their parent is not could also be
+ restored subtly incorrectly.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix <application>pg_restore</>'s direct-to-database mode for
+ INSERT-style table data (Tom Lane)
+ </para>
+
+ <para>
+ Direct-to-database restores from archive files made with
+ <option>--inserts</> or <option>--column-inserts</> options fail when
+ using <application>pg_restore</> from a release dated September or
+ December 2011, as a result of an oversight in a fix for another
+ problem. The archive file itself is not at fault, and text-mode
+ output is okay.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Teach <application>pg_upgrade</> to handle renaming of
+ <application>plpython</>'s shared library (Bruce Momjian)
+ </para>
+
+ <para>
+ Upgrading a pre-9.1 database that included plpython would fail because
+ of this oversight.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Allow <application>pg_upgrade</> to process tables containing
+ <type>regclass</> columns (Bruce Momjian)
+ </para>
+
+ <para>
+ Since <application>pg_upgrade</> now takes care to preserve
+ <structname>pg_class</> OIDs, there was no longer any reason for this
+ restriction.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Make <application>libpq</> ignore <literal>ENOTDIR</> errors
+ when looking for an SSL client certificate file
+ (Magnus Hagander)
+ </para>
+
+ <para>
+ This allows SSL connections to be established, though without a
+ certificate, even when the user's home directory is set to something
+ like <literal>/dev/null</>.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix some more field alignment issues in <application>ecpg</>'s SQLDA area
+ (Zoltan Boszormenyi)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Allow <literal>AT</> option in <application>ecpg</>
+ <literal>DEALLOCATE</> statements (Michael Meskes)
+ </para>
+
+ <para>
+ The infrastructure to support this has been there for awhile, but
+ through an oversight there was still an error check rejecting the case.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Do not use the variable name when defining a varchar structure in ecpg
+ (Michael Meskes)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix <filename>contrib/auto_explain</>'s JSON output mode to produce
+ valid JSON (Andrew Dunstan)
+ </para>
+
+ <para>
+ The output used brackets at the top level, when it should have used
+ braces.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix error in <filename>contrib/intarray</>'s <literal>int[] &amp;
+ int[]</> operator (Guillaume Lelarge)
+ </para>
+
+ <para>
+ If the smallest integer the two input arrays have in common is 1,
+ and there are smaller values in either array, then 1 would be
+ incorrectly omitted from the result.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix error detection in <filename>contrib/pgcrypto</>'s
+ <function>encrypt_iv()</> and <function>decrypt_iv()</>
+ (Marko Kreen)
+ </para>
+
+ <para>
+ These functions failed to report certain types of invalid-input errors,
+ and would instead return random garbage values for incorrect input.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix one-byte buffer overrun in <filename>contrib/test_parser</>
+ (Paul Guyot)
+ </para>
+
+ <para>
+ The code would try to read one more byte than it should, which would
+ crash in corner cases.
+ Since <filename>contrib/test_parser</> is only example code, this is
+ not a security issue in itself, but bad example code is still bad.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Use <function>__sync_lock_test_and_set()</> for spinlocks on ARM, if
+ available (Martin Pitt)
+ </para>
+
+ <para>
+ This function replaces our previous use of the <literal>SWPB</>
+ instruction, which is deprecated and not available on ARMv6 and later.
+ Reports suggest that the old code doesn't fail in an obvious way on
+ recent ARM boards, but simply doesn't interlock concurrent accesses,
+ leading to bizarre failures in multiprocess operation.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Use <option>-fexcess-precision=standard</> option when building with
+ gcc versions that accept it (Andrew Dunstan)
+ </para>
+
+ <para>
+ This prevents assorted scenarios wherein recent versions of gcc will
+ produce creative results.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Allow use of threaded Python on FreeBSD (Chris Rees)
+ </para>
+
+ <para>
+ Our configure script previously believed that this combination wouldn't
+ work; but FreeBSD fixed the problem, so remove that error check.
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
<sect1 id="release-9-1-2">
<title>Release 9.1.2</title>