diff --git a/doc/src/sgml/release-8.3.sgml b/doc/src/sgml/release-8.3.sgml
index d3b163a4d32..082dc349bca 100644
--- a/doc/src/sgml/release-8.3.sgml
+++ b/doc/src/sgml/release-8.3.sgml
@@ -1,6 +1,302 @@
+
+ Release 8.3.22
+
+
+ Release Date
+ 2012-12-06
+
+
+
+ This release contains a variety of fixes from 8.3.21.
+ For information about new features in the 8.3 major release, see
+ .
+
+
+
+ The PostgreSQL> community will stop releasing updates
+ for the 8.3.X release series in February 2013.
+ Users are encouraged to update to a newer release branch soon.
+
+
+
+ Migration to Version 8.3.22
+
+
+ A dump/restore is not required for those running 8.3.X.
+
+
+
+ However, if you are upgrading from a version earlier than 8.3.17,
+ see the release notes for 8.3.17.
+
+
+
+
+
+ Changes
+
+
+
+
+
+ Fix multiple bugs associated with CREATE INDEX
+ CONCURRENTLY> (Andres Freund, Tom Lane)
+
+
+
+ Fix CREATE INDEX CONCURRENTLY> to use
+ in-place updates when changing the state of an index's
+ pg_index> row. This prevents race conditions that could
+ cause concurrent sessions to miss updating the target index, thus
+ resulting in corrupt concurrently-created indexes.
+
+
+
+ Also, fix various other operations to ensure that they ignore
+ invalid indexes resulting from a failed CREATE INDEX
+ CONCURRENTLY> command. The most important of these is
+ VACUUM>, because an auto-vacuum could easily be launched
+ on the table before corrective action can be taken to fix or remove
+ the invalid index.
+
+
+
+
+
+ Avoid corruption of internal hash tables when out of memory
+ (Hitoshi Harada)
+
+
+
+
+
+ Fix planning of non-strict equivalence clauses above outer joins
+ (Tom Lane)
+
+
+
+ The planner could derive incorrect constraints from a clause equating
+ a non-strict construct to something else, for example
+ WHERE COALESCE(foo, 0) = 0>
+ when foo> is coming from the nullable side of an outer join.
+
+
+
+
+
+ Improve planner's ability to prove exclusion constraints from
+ equivalence classes (Tom Lane)
+
+
+
+
+
+ Fix partial-row matching in hashed subplans to handle cross-type cases
+ correctly (Tom Lane)
+
+
+
+ This affects multicolumn NOT IN> subplans, such as
+ WHERE (a, b) NOT IN (SELECT x, y FROM ...)>
+ when for instance b> and y> are int4>
+ and int8> respectively. This mistake led to wrong answers
+ or crashes depending on the specific datatypes involved.
+
+
+
+
+
+ Acquire buffer lock when re-fetching the old tuple for an
+ AFTER ROW UPDATE/DELETE> trigger (Andres Freund)
+
+
+
+ In very unusual circumstances, this oversight could result in passing
+ incorrect data to the precheck logic for a foreign-key enforcement
+ trigger. That could result in a crash, or in an incorrect decision
+ about whether to fire the trigger.
+
+
+
+
+
+ Fix REASSIGN OWNED> to handle grants on tablespaces
+ (Álvaro Herrera)
+
+
+
+
+
+ Ignore incorrect pg_attribute> entries for system
+ columns for views (Tom Lane)
+
+
+
+ Views do not have any system columns. However, we forgot to
+ remove such entries when converting a table to a view. That's fixed
+ properly for 9.3 and later, but in previous branches we need to defend
+ against existing mis-converted views.
+
+
+
+
+
+ Fix rule printing to dump INSERT INTO table>
+ DEFAULT VALUES correctly (Tom Lane)
+
+
+
+
+
+ Guard against stack overflow when there are too many
+ UNION>/INTERSECT>/EXCEPT> clauses
+ in a query (Tom Lane)
+
+
+
+
+
+ Prevent platform-dependent failures when dividing the minimum possible
+ integer value by -1 (Xi Wang, Tom Lane)
+
+
+
+
+
+ Fix possible access past end of string in date parsing
+ (Hitoshi Harada)
+
+
+
+
+
+ Produce an understandable error message if the length of the path name
+ for a Unix-domain socket exceeds the platform-specific limit
+ (Tom Lane, Andrew Dunstan)
+
+
+
+ Formerly, this would result in something quite unhelpful, such as
+ Non-recoverable failure in name resolution>.
+
+
+
+
+
+ Fix memory leaks when sending composite column values to the client
+ (Tom Lane)
+
+
+
+
+
+ Make pg_ctl> more robust about reading the
+ postmaster.pid> file (Heikki Linnakangas)
+
+
+
+ Fix race conditions and possible file descriptor leakage.
+
+
+
+
+
+ Fix possible crash in psql> if incorrectly-encoded data
+ is presented and the client_encoding> setting is a
+ client-only encoding, such as SJIS (Jiang Guiqing)
+
+
+
+
+
+ Fix bugs in the restore.sql> script emitted by
+ pg_dump> in tar> output format (Tom Lane)
+
+
+
+ The script would fail outright on tables whose names include
+ upper-case characters. Also, make the script capable of restoring
+ data in
+
+
+
+
+ Fix pg_restore> to accept POSIX-conformant
+ tar> files (Brian Weaver, Tom Lane)
+
+
+
+ The original coding of pg_dump>'s tar>
+ output mode produced files that are not fully conformant with the
+ POSIX standard. This has been corrected for version 9.3. This
+ patch updates previous branches so that they will accept both the
+ incorrect and the corrected formats, in hopes of avoiding
+ compatibility problems when 9.3 comes out.
+
+
+
+
+
+ Fix pg_resetxlog> to locate postmaster.pid>
+ correctly when given a relative path to the data directory (Tom Lane)
+
+
+
+ This mistake could lead to pg_resetxlog> not noticing
+ that there is an active postmaster using the data directory.
+
+
+
+
+
+ Fix libpq>'s lo_import()> and
+ lo_export()> functions to report file I/O errors properly
+ (Tom Lane)
+
+
+
+
+
+ Fix ecpg>'s processing of nested structure pointer
+ variables (Muhammad Usama)
+
+
+
+
+
+ Make contrib/pageinspect>'s btree page inspection
+ functions take buffer locks while examining pages (Tom Lane)
+
+
+
+
+
+ Fix pgxs> support for building loadable modules on AIX
+ (Tom Lane)
+
+
+
+ Building modules outside the original source tree didn't work on AIX.
+
+
+
+
+
+ Update time zone data files to tzdata> release 2012j
+ for DST law changes in Cuba, Israel, Jordan, Libya, Palestine, Western
+ Samoa, and portions of Brazil.
+
+
+
+
+
+
+
+
Release 8.3.21
diff --git a/doc/src/sgml/release-8.4.sgml b/doc/src/sgml/release-8.4.sgml
index 54f5c131af9..f6a938c2ce6 100644
--- a/doc/src/sgml/release-8.4.sgml
+++ b/doc/src/sgml/release-8.4.sgml
@@ -1,6 +1,308 @@
+
+ Release 8.4.15
+
+
+ Release Date
+ 2012-12-06
+
+
+
+ This release contains a variety of fixes from 8.4.14.
+ For information about new features in the 8.4 major release, see
+ .
+
+
+
+ Migration to Version 8.4.15
+
+
+ A dump/restore is not required for those running 8.4.X.
+
+
+
+ However, if you are upgrading from a version earlier than 8.4.10,
+ see the release notes for 8.4.10.
+
+
+
+
+
+ Changes
+
+
+
+
+
+ Fix multiple bugs associated with CREATE INDEX
+ CONCURRENTLY> (Andres Freund, Tom Lane)
+
+
+
+ Fix CREATE INDEX CONCURRENTLY> to use
+ in-place updates when changing the state of an index's
+ pg_index> row. This prevents race conditions that could
+ cause concurrent sessions to miss updating the target index, thus
+ resulting in corrupt concurrently-created indexes.
+
+
+
+ Also, fix various other operations to ensure that they ignore
+ invalid indexes resulting from a failed CREATE INDEX
+ CONCURRENTLY> command. The most important of these is
+ VACUUM>, because an auto-vacuum could easily be launched
+ on the table before corrective action can be taken to fix or remove
+ the invalid index.
+
+
+
+
+
+ Avoid corruption of internal hash tables when out of memory
+ (Hitoshi Harada)
+
+
+
+
+
+ Fix planning of non-strict equivalence clauses above outer joins
+ (Tom Lane)
+
+
+
+ The planner could derive incorrect constraints from a clause equating
+ a non-strict construct to something else, for example
+ WHERE COALESCE(foo, 0) = 0>
+ when foo> is coming from the nullable side of an outer join.
+
+
+
+
+
+ Improve planner's ability to prove exclusion constraints from
+ equivalence classes (Tom Lane)
+
+
+
+
+
+ Fix partial-row matching in hashed subplans to handle cross-type cases
+ correctly (Tom Lane)
+
+
+
+ This affects multicolumn NOT IN> subplans, such as
+ WHERE (a, b) NOT IN (SELECT x, y FROM ...)>
+ when for instance b> and y> are int4>
+ and int8> respectively. This mistake led to wrong answers
+ or crashes depending on the specific datatypes involved.
+
+
+
+
+
+ Acquire buffer lock when re-fetching the old tuple for an
+ AFTER ROW UPDATE/DELETE> trigger (Andres Freund)
+
+
+
+ In very unusual circumstances, this oversight could result in passing
+ incorrect data to the precheck logic for a foreign-key enforcement
+ trigger. That could result in a crash, or in an incorrect decision
+ about whether to fire the trigger.
+
+
+
+
+
+ Fix ALTER COLUMN TYPE> to handle inherited check
+ constraints properly (Pavan Deolasee)
+
+
+
+ This worked correctly in pre-8.4 releases, and now works correctly
+ in 8.4 and later.
+
+
+
+
+
+ Fix REASSIGN OWNED> to handle grants on tablespaces
+ (Álvaro Herrera)
+
+
+
+
+
+ Ignore incorrect pg_attribute> entries for system
+ columns for views (Tom Lane)
+
+
+
+ Views do not have any system columns. However, we forgot to
+ remove such entries when converting a table to a view. That's fixed
+ properly for 9.3 and later, but in previous branches we need to defend
+ against existing mis-converted views.
+
+
+
+
+
+ Fix rule printing to dump INSERT INTO table>
+ DEFAULT VALUES correctly (Tom Lane)
+
+
+
+
+
+ Guard against stack overflow when there are too many
+ UNION>/INTERSECT>/EXCEPT> clauses
+ in a query (Tom Lane)
+
+
+
+
+
+ Prevent platform-dependent failures when dividing the minimum possible
+ integer value by -1 (Xi Wang, Tom Lane)
+
+
+
+
+
+ Fix possible access past end of string in date parsing
+ (Hitoshi Harada)
+
+
+
+
+
+ Produce an understandable error message if the length of the path name
+ for a Unix-domain socket exceeds the platform-specific limit
+ (Tom Lane, Andrew Dunstan)
+
+
+
+ Formerly, this would result in something quite unhelpful, such as
+ Non-recoverable failure in name resolution>.
+
+
+
+
+
+ Fix memory leaks when sending composite column values to the client
+ (Tom Lane)
+
+
+
+
+
+ Make pg_ctl> more robust about reading the
+ postmaster.pid> file (Heikki Linnakangas)
+
+
+
+ Fix race conditions and possible file descriptor leakage.
+
+
+
+
+
+ Fix possible crash in psql> if incorrectly-encoded data
+ is presented and the client_encoding> setting is a
+ client-only encoding, such as SJIS (Jiang Guiqing)
+
+
+
+
+
+ Fix bugs in the restore.sql> script emitted by
+ pg_dump> in tar> output format (Tom Lane)
+
+
+
+ The script would fail outright on tables whose names include
+ upper-case characters. Also, make the script capable of restoring
+ data in
+
+
+
+
+ Fix pg_restore> to accept POSIX-conformant
+ tar> files (Brian Weaver, Tom Lane)
+
+
+
+ The original coding of pg_dump>'s tar>
+ output mode produced files that are not fully conformant with the
+ POSIX standard. This has been corrected for version 9.3. This
+ patch updates previous branches so that they will accept both the
+ incorrect and the corrected formats, in hopes of avoiding
+ compatibility problems when 9.3 comes out.
+
+
+
+
+
+ Fix pg_resetxlog> to locate postmaster.pid>
+ correctly when given a relative path to the data directory (Tom Lane)
+
+
+
+ This mistake could lead to pg_resetxlog> not noticing
+ that there is an active postmaster using the data directory.
+
+
+
+
+
+ Fix libpq>'s lo_import()> and
+ lo_export()> functions to report file I/O errors properly
+ (Tom Lane)
+
+
+
+
+
+ Fix ecpg>'s processing of nested structure pointer
+ variables (Muhammad Usama)
+
+
+
+
+
+ Make contrib/pageinspect>'s btree page inspection
+ functions take buffer locks while examining pages (Tom Lane)
+
+
+
+
+
+ Fix pgxs> support for building loadable modules on AIX
+ (Tom Lane)
+
+
+
+ Building modules outside the original source tree didn't work on AIX.
+
+
+
+
+
+ Update time zone data files to tzdata> release 2012j
+ for DST law changes in Cuba, Israel, Jordan, Libya, Palestine, Western
+ Samoa, and portions of Brazil.
+
+
+
+
+
+
+
+
Release 8.4.14
diff --git a/doc/src/sgml/release-9.0.sgml b/doc/src/sgml/release-9.0.sgml
index af99af82bec..495738cd3cf 100644
--- a/doc/src/sgml/release-9.0.sgml
+++ b/doc/src/sgml/release-9.0.sgml
@@ -1,6 +1,384 @@
+
+ Release 9.0.11
+
+
+ Release Date
+ 2012-12-06
+
+
+
+ This release contains a variety of fixes from 9.0.10.
+ For information about new features in the 9.0 major release, see
+ .
+
+
+
+ Migration to Version 9.0.11
+
+
+ A dump/restore is not required for those running 9.0.X.
+
+
+
+ However, if you are upgrading from a version earlier than 9.0.6,
+ see the release notes for 9.0.6.
+
+
+
+
+
+ Changes
+
+
+
+
+
+ Fix multiple bugs associated with CREATE INDEX
+ CONCURRENTLY> (Andres Freund, Tom Lane)
+
+
+
+ Fix CREATE INDEX CONCURRENTLY> to use
+ in-place updates when changing the state of an index's
+ pg_index> row. This prevents race conditions that could
+ cause concurrent sessions to miss updating the target index, thus
+ resulting in corrupt concurrently-created indexes.
+
+
+
+ Also, fix various other operations to ensure that they ignore
+ invalid indexes resulting from a failed CREATE INDEX
+ CONCURRENTLY> command. The most important of these is
+ VACUUM>, because an auto-vacuum could easily be launched
+ on the table before corrective action can be taken to fix or remove
+ the invalid index.
+
+
+
+
+
+ Fix buffer locking during WAL replay (Tom Lane)
+
+
+
+ The WAL replay code was insufficiently careful about locking buffers
+ when replaying WAL records that affect more than one page. This could
+ result in hot standby queries transiently seeing inconsistent states,
+ resulting in wrong answers or unexpected failures.
+
+
+
+
+
+ Fix an error in WAL generation logic for GIN indexes (Tom Lane)
+
+
+
+ This could result in index corruption, if a torn-page failure occurred.
+
+
+
+
+
+ Properly remove startup process's virtual XID lock when promoting a
+ hot standby server to normal running (Simon Riggs)
+
+
+
+ This oversight could prevent subsequent execution of certain
+ operations such as CREATE INDEX CONCURRENTLY>.
+
+
+
+
+
+ Avoid bogus out-of-sequence timeline ID> errors in standby
+ mode (Heikki Linnakangas)
+
+
+
+
+
+ Prevent the postmaster from launching new child processes after it's
+ received a shutdown signal (Tom Lane)
+
+
+
+ This mistake could result in shutdown taking longer than it should, or
+ even never completing at all without additional user action.
+
+
+
+
+
+ Avoid corruption of internal hash tables when out of memory
+ (Hitoshi Harada)
+
+
+
+
+
+ Fix planning of non-strict equivalence clauses above outer joins
+ (Tom Lane)
+
+
+
+ The planner could derive incorrect constraints from a clause equating
+ a non-strict construct to something else, for example
+ WHERE COALESCE(foo, 0) = 0>
+ when foo> is coming from the nullable side of an outer join.
+
+
+
+
+
+ Improve planner's ability to prove exclusion constraints from
+ equivalence classes (Tom Lane)
+
+
+
+
+
+ Fix partial-row matching in hashed subplans to handle cross-type cases
+ correctly (Tom Lane)
+
+
+
+ This affects multicolumn NOT IN> subplans, such as
+ WHERE (a, b) NOT IN (SELECT x, y FROM ...)>
+ when for instance b> and y> are int4>
+ and int8> respectively. This mistake led to wrong answers
+ or crashes depending on the specific datatypes involved.
+
+
+
+
+
+ Acquire buffer lock when re-fetching the old tuple for an
+ AFTER ROW UPDATE/DELETE> trigger (Andres Freund)
+
+
+
+ In very unusual circumstances, this oversight could result in passing
+ incorrect data to the precheck logic for a foreign-key enforcement
+ trigger. That could result in a crash, or in an incorrect decision
+ about whether to fire the trigger.
+
+
+
+
+
+ Fix ALTER COLUMN TYPE> to handle inherited check
+ constraints properly (Pavan Deolasee)
+
+
+
+ This worked correctly in pre-8.4 releases, and now works correctly
+ in 8.4 and later.
+
+
+
+
+
+ Fix REASSIGN OWNED> to handle grants on tablespaces
+ (Álvaro Herrera)
+
+
+
+
+
+ Ignore incorrect pg_attribute> entries for system
+ columns for views (Tom Lane)
+
+
+
+ Views do not have any system columns. However, we forgot to
+ remove such entries when converting a table to a view. That's fixed
+ properly for 9.3 and later, but in previous branches we need to defend
+ against existing mis-converted views.
+
+
+
+
+
+ Fix rule printing to dump INSERT INTO table>
+ DEFAULT VALUES correctly (Tom Lane)
+
+
+
+
+
+ Guard against stack overflow when there are too many
+ UNION>/INTERSECT>/EXCEPT> clauses
+ in a query (Tom Lane)
+
+
+
+
+
+ Prevent platform-dependent failures when dividing the minimum possible
+ integer value by -1 (Xi Wang, Tom Lane)
+
+
+
+
+
+ Fix possible access past end of string in date parsing
+ (Hitoshi Harada)
+
+
+
+
+
+ Fix failure to advance XID epoch if XID wraparound happens during a
+ checkpoint and wal_level> is hot_standby>
+ (Tom Lane, Andres Freund)
+
+
+
+ While this mistake had no particular impact on
+ PostgreSQL itself, it was bad for
+ applications that rely on txid_current()> and related
+ functions: the TXID value would appear to go backwards.
+
+
+
+
+
+ Produce an understandable error message if the length of the path name
+ for a Unix-domain socket exceeds the platform-specific limit
+ (Tom Lane, Andrew Dunstan)
+
+
+
+ Formerly, this would result in something quite unhelpful, such as
+ Non-recoverable failure in name resolution>.
+
+
+
+
+
+ Fix memory leaks when sending composite column values to the client
+ (Tom Lane)
+
+
+
+
+
+ Make pg_ctl> more robust about reading the
+ postmaster.pid> file (Heikki Linnakangas)
+
+
+
+ Fix race conditions and possible file descriptor leakage.
+
+
+
+
+
+ Fix possible crash in psql> if incorrectly-encoded data
+ is presented and the client_encoding> setting is a
+ client-only encoding, such as SJIS (Jiang Guiqing)
+
+
+
+
+
+ Fix bugs in the restore.sql> script emitted by
+ pg_dump> in tar> output format (Tom Lane)
+
+
+
+ The script would fail outright on tables whose names include
+ upper-case characters. Also, make the script capable of restoring
+ data in
+
+
+
+
+ Fix pg_restore> to accept POSIX-conformant
+ tar> files (Brian Weaver, Tom Lane)
+
+
+
+ The original coding of pg_dump>'s tar>
+ output mode produced files that are not fully conformant with the
+ POSIX standard. This has been corrected for version 9.3. This
+ patch updates previous branches so that they will accept both the
+ incorrect and the corrected formats, in hopes of avoiding
+ compatibility problems when 9.3 comes out.
+
+
+
+
+
+ Fix pg_resetxlog> to locate postmaster.pid>
+ correctly when given a relative path to the data directory (Tom Lane)
+
+
+
+ This mistake could lead to pg_resetxlog> not noticing
+ that there is an active postmaster using the data directory.
+
+
+
+
+
+ Fix libpq>'s lo_import()> and
+ lo_export()> functions to report file I/O errors properly
+ (Tom Lane)
+
+
+
+
+
+ Fix ecpg>'s processing of nested structure pointer
+ variables (Muhammad Usama)
+
+
+
+
+
+ Fix ecpg>'s ecpg_get_data> function to
+ handle arrays properly (Michael Meskes)
+
+
+
+
+
+ Make contrib/pageinspect>'s btree page inspection
+ functions take buffer locks while examining pages (Tom Lane)
+
+
+
+
+
+ Fix pgxs> support for building loadable modules on AIX
+ (Tom Lane)
+
+
+
+ Building modules outside the original source tree didn't work on AIX.
+
+
+
+
+
+ Update time zone data files to tzdata> release 2012j
+ for DST law changes in Cuba, Israel, Jordan, Libya, Palestine, Western
+ Samoa, and portions of Brazil.
+
+
+
+
+
+
+
+
Release 9.0.10
diff --git a/doc/src/sgml/release-9.1.sgml b/doc/src/sgml/release-9.1.sgml
index 6bc1c8c90eb..1143fdfdcd0 100644
--- a/doc/src/sgml/release-9.1.sgml
+++ b/doc/src/sgml/release-9.1.sgml
@@ -1,6 +1,469 @@
+
+ Release 9.1.7
+
+
+ Release Date
+ 2012-12-06
+
+
+
+ This release contains a variety of fixes from 9.1.6.
+ For information about new features in the 9.1 major release, see
+ .
+
+
+
+ Migration to Version 9.1.7
+
+
+ A dump/restore is not required for those running 9.1.X.
+
+
+
+ However, if you are upgrading from a version earlier than 9.1.6,
+ see the release notes for 9.1.6.
+
+
+
+
+
+ Changes
+
+
+
+
+
+ Fix multiple bugs associated with CREATE INDEX
+ CONCURRENTLY> (Andres Freund, Tom Lane)
+
+
+
+ Fix CREATE INDEX CONCURRENTLY> to use
+ in-place updates when changing the state of an index's
+ pg_index> row. This prevents race conditions that could
+ cause concurrent sessions to miss updating the target index, thus
+ resulting in corrupt concurrently-created indexes.
+
+
+
+ Also, fix various other operations to ensure that they ignore
+ invalid indexes resulting from a failed CREATE INDEX
+ CONCURRENTLY> command. The most important of these is
+ VACUUM>, because an auto-vacuum could easily be launched
+ on the table before corrective action can be taken to fix or remove
+ the invalid index.
+
+
+
+
+
+ Fix buffer locking during WAL replay (Tom Lane)
+
+
+
+ The WAL replay code was insufficiently careful about locking buffers
+ when replaying WAL records that affect more than one page. This could
+ result in hot standby queries transiently seeing inconsistent states,
+ resulting in wrong answers or unexpected failures.
+
+
+
+
+
+ Fix an error in WAL generation logic for GIN indexes (Tom Lane)
+
+
+
+ This could result in index corruption, if a torn-page failure occurred.
+
+
+
+
+
+ Properly remove startup process's virtual XID lock when promoting a
+ hot standby server to normal running (Simon Riggs)
+
+
+
+ This oversight could prevent subsequent execution of certain
+ operations such as CREATE INDEX CONCURRENTLY>.
+
+
+
+
+
+ Avoid bogus out-of-sequence timeline ID> errors in standby
+ mode (Heikki Linnakangas)
+
+
+
+
+
+ Prevent the postmaster from launching new child processes after it's
+ received a shutdown signal (Tom Lane)
+
+
+
+ This mistake could result in shutdown taking longer than it should, or
+ even never completing at all without additional user action.
+
+
+
+
+
+ Avoid corruption of internal hash tables when out of memory
+ (Hitoshi Harada)
+
+
+
+
+
+ Prevent file descriptors for dropped tables from being held open past
+ transaction end (Tom Lane)
+
+
+
+ This should reduce problems with long-since-dropped tables continuing
+ to occupy disk space.
+
+
+
+
+
+ Prevent database-wide crash and restart when a new child process is
+ unable to create a pipe for its latch (Tom Lane)
+
+
+
+ Although the new process must fail, there is no good reason to force a
+ database-wide restart, so avoid that. This improves robustness when
+ the kernel is nearly out of file descriptors.
+
+
+
+
+
+ Fix planning of non-strict equivalence clauses above outer joins
+ (Tom Lane)
+
+
+
+ The planner could derive incorrect constraints from a clause equating
+ a non-strict construct to something else, for example
+ WHERE COALESCE(foo, 0) = 0>
+ when foo> is coming from the nullable side of an outer join.
+
+
+
+
+
+ Fix SELECT DISTINCT> with index-optimized
+ MIN>/MAX> on an inheritance tree (Tom Lane)
+
+
+
+ The planner would fail with failed to re-find MinMaxAggInfo
+ record> given this combination of factors.
+
+
+
+
+
+ Improve planner's ability to prove exclusion constraints from
+ equivalence classes (Tom Lane)
+
+
+
+
+
+ Fix partial-row matching in hashed subplans to handle cross-type cases
+ correctly (Tom Lane)
+
+
+
+ This affects multicolumn NOT IN> subplans, such as
+ WHERE (a, b) NOT IN (SELECT x, y FROM ...)>
+ when for instance b> and y> are int4>
+ and int8> respectively. This mistake led to wrong answers
+ or crashes depending on the specific datatypes involved.
+
+
+
+
+
+ Acquire buffer lock when re-fetching the old tuple for an
+ AFTER ROW UPDATE/DELETE> trigger (Andres Freund)
+
+
+
+ In very unusual circumstances, this oversight could result in passing
+ incorrect data to a trigger WHEN> condition, or to the
+ precheck logic for a foreign-key enforcement trigger. That could
+ result in a crash, or in an incorrect decision about whether to
+ fire the trigger.
+
+
+
+
+
+ Fix ALTER COLUMN TYPE> to handle inherited check
+ constraints properly (Pavan Deolasee)
+
+
+
+ This worked correctly in pre-8.4 releases, and now works correctly
+ in 8.4 and later.
+
+
+
+
+
+ Fix ALTER EXTENSION SET SCHEMA>'s failure to move some
+ subsidiary objects into the new schema (Álvaro Herrera, Dimitri
+ Fontaine)
+
+
+
+
+
+ Fix REASSIGN OWNED> to handle grants on tablespaces
+ (Álvaro Herrera)
+
+
+
+
+
+ Ignore incorrect pg_attribute> entries for system
+ columns for views (Tom Lane)
+
+
+
+ Views do not have any system columns. However, we forgot to
+ remove such entries when converting a table to a view. That's fixed
+ properly for 9.3 and later, but in previous branches we need to defend
+ against existing mis-converted views.
+
+
+
+
+
+ Fix rule printing to dump INSERT INTO table>
+ DEFAULT VALUES correctly (Tom Lane)
+
+
+
+
+
+ Guard against stack overflow when there are too many
+ UNION>/INTERSECT>/EXCEPT> clauses
+ in a query (Tom Lane)
+
+
+
+
+
+ Prevent platform-dependent failures when dividing the minimum possible
+ integer value by -1 (Xi Wang, Tom Lane)
+
+
+
+
+
+ Fix possible access past end of string in date parsing
+ (Hitoshi Harada)
+
+
+
+
+
+ Fix failure to advance XID epoch if XID wraparound happens during a
+ checkpoint and wal_level> is hot_standby>
+ (Tom Lane, Andres Freund)
+
+
+
+ While this mistake had no particular impact on
+ PostgreSQL itself, it was bad for
+ applications that rely on txid_current()> and related
+ functions: the TXID value would appear to go backwards.
+
+
+
+
+
+ Fix display of
+ pg_stat_replication>.sync_state> at a
+ page boundary (Kyotaro Horiguchi)
+
+
+
+
+
+ Produce an understandable error message if the length of the path name
+ for a Unix-domain socket exceeds the platform-specific limit
+ (Tom Lane, Andrew Dunstan)
+
+
+
+ Formerly, this would result in something quite unhelpful, such as
+ Non-recoverable failure in name resolution>.
+
+
+
+
+
+ Fix memory leaks when sending composite column values to the client
+ (Tom Lane)
+
+
+
+
+
+ Make pg_ctl> more robust about reading the
+ postmaster.pid> file (Heikki Linnakangas)
+
+
+
+ Fix race conditions and possible file descriptor leakage.
+
+
+
+
+
+ Fix possible crash in psql> if incorrectly-encoded data
+ is presented and the client_encoding> setting is a
+ client-only encoding, such as SJIS (Jiang Guiqing)
+
+
+
+
+
+ Make pg_dump> dump SEQUENCE SET> items in
+ the data not pre-data section of the archive (Tom Lane)
+
+
+
+ This change fixes dumping of sequences that are marked as extension
+ configuration tables.
+
+
+
+
+
+ Fix bugs in the restore.sql> script emitted by
+ pg_dump> in tar> output format (Tom Lane)
+
+
+
+ The script would fail outright on tables whose names include
+ upper-case characters. Also, make the script capable of restoring
+ data in
+
+
+
+
+ Fix pg_restore> to accept POSIX-conformant
+ tar> files (Brian Weaver, Tom Lane)
+
+
+
+ The original coding of pg_dump>'s tar>
+ output mode produced files that are not fully conformant with the
+ POSIX standard. This has been corrected for version 9.3. This
+ patch updates previous branches so that they will accept both the
+ incorrect and the corrected formats, in hopes of avoiding
+ compatibility problems when 9.3 comes out.
+
+
+
+
+
+ Fix tar> files emitted by pg_basebackup> to
+ be POSIX conformant (Brian Weaver, Tom Lane)
+
+
+
+
+
+ Fix pg_resetxlog> to locate postmaster.pid>
+ correctly when given a relative path to the data directory (Tom Lane)
+
+
+
+ This mistake could lead to pg_resetxlog> not noticing
+ that there is an active postmaster using the data directory.
+
+
+
+
+
+ Fix libpq>'s lo_import()> and
+ lo_export()> functions to report file I/O errors properly
+ (Tom Lane)
+
+
+
+
+
+ Fix ecpg>'s processing of nested structure pointer
+ variables (Muhammad Usama)
+
+
+
+
+
+ Fix ecpg>'s ecpg_get_data> function to
+ handle arrays properly (Michael Meskes)
+
+
+
+
+
+ Make contrib/pageinspect>'s btree page inspection
+ functions take buffer locks while examining pages (Tom Lane)
+
+
+
+
+
+ Ensure that make install> for an extension creates the
+ extension> installation directory (Cédric Villemain)
+
+
+
+ Previously, this step was missed if MODULEDIR> was set in
+ the extension's Makefile.
+
+
+
+
+
+ Fix pgxs> support for building loadable modules on AIX
+ (Tom Lane)
+
+
+
+ Building modules outside the original source tree didn't work on AIX.
+
+
+
+
+
+ Update time zone data files to tzdata> release 2012j
+ for DST law changes in Cuba, Israel, Jordan, Libya, Palestine, Western
+ Samoa, and portions of Brazil.
+
+
+
+
+
+
+
+
Release 9.1.6
@@ -146,7 +609,7 @@
Disallow extensions from containing the schema they are assigned to
- (Thom Brown)
+ (Thom Brown)
@@ -3322,7 +3785,7 @@
Add
- replication_timeout>
+ replication_timeout>
setting (Fujii Masao, Heikki Linnakangas)
diff --git a/doc/src/sgml/release-9.2.sgml b/doc/src/sgml/release-9.2.sgml
index c641606fd52..5f4f4baff3e 100644
--- a/doc/src/sgml/release-9.2.sgml
+++ b/doc/src/sgml/release-9.2.sgml
@@ -1,6 +1,730 @@
+
+ Release 9.2.2
+
+
+ Release Date
+ 2012-12-06
+
+
+
+ This release contains a variety of fixes from 9.2.1.
+ For information about new features in the 9.2 major release, see
+ .
+
+
+
+ Migration to Version 9.2.2
+
+
+ A dump/restore is not required for those running 9.2.X.
+
+
+
+ However, you may need to perform REINDEX> operations to
+ correct problems in concurrently-built indexes, as described in the first
+ changelog item below.
+
+
+
+ Also, if you are upgrading from version 9.2.0,
+ see the release notes for 9.2.1.
+
+
+
+
+
+ Changes
+
+
+
+
+
+ Fix multiple bugs associated with CREATE/DROP INDEX
+ CONCURRENTLY> (Andres Freund, Tom Lane, Simon Riggs, Pavan Deolasee)
+
+
+
+ An error introduced while adding DROP INDEX CONCURRENTLY>
+ allowed incorrect indexing decisions to be made during the initial
+ phase of CREATE INDEX CONCURRENTLY>; so that indexes built
+ by that command could be corrupt. It is recommended that indexes
+ built in 9.2.X with CREATE INDEX CONCURRENTLY> be rebuilt
+ after applying this update.
+
+
+
+ In addition, fix CREATE/DROP INDEX CONCURRENTLY> to use
+ in-place updates when changing the state of an index's
+ pg_index> row. This prevents race conditions that could
+ cause concurrent sessions to miss updating the target index, thus
+ again resulting in corrupt concurrently-created indexes.
+
+
+
+ Also, fix various other operations to ensure that they ignore
+ invalid indexes resulting from a failed CREATE INDEX
+ CONCURRENTLY> command. The most important of these is
+ VACUUM>, because an auto-vacuum could easily be launched
+ on the table before corrective action can be taken to fix or remove
+ the invalid index.
+
+
+
+ Also fix DROP INDEX CONCURRENTLY> to not disable
+ insertions into the target index until all queries using it are done.
+
+
+
+ Also fix misbehavior if DROP INDEX CONCURRENTLY> is
+ canceled: the previous coding could leave an un-droppable index behind.
+
+
+
+
+
+ Correct predicate locking for DROP INDEX CONCURRENTLY>
+ (Kevin Grittner)
+
+
+
+ Previously, SSI predicate locks were processed at the wrong time,
+ possibly leading to incorrect behavior of serializable transactions
+ executing in parallel with the DROP>.
+
+
+
+
+
+ Fix buffer locking during WAL replay (Tom Lane)
+
+
+
+ The WAL replay code was insufficiently careful about locking buffers
+ when replaying WAL records that affect more than one page. This could
+ result in hot standby queries transiently seeing inconsistent states,
+ resulting in wrong answers or unexpected failures.
+
+
+
+
+
+ Fix an error in WAL generation logic for GIN indexes (Tom Lane)
+
+
+
+ This could result in index corruption, if a torn-page failure occurred.
+
+
+
+
+
+ Fix an error in WAL replay logic for SP-GiST indexes (Tom Lane)
+
+
+
+ This could result in index corruption after a crash, or on a standby
+ server.
+
+
+
+
+
+ Fix incorrect detection of end-of-base-backup location during WAL
+ recovery (Heikki Linnakangas)
+
+
+
+ This mistake allowed hot standby mode to start up before the database
+ reaches a consistent state.
+
+
+
+
+
+ Properly remove startup process's virtual XID lock when promoting a
+ hot standby server to normal running (Simon Riggs)
+
+
+
+ This oversight could prevent subsequent execution of certain
+ operations such as CREATE INDEX CONCURRENTLY>.
+
+
+
+
+
+ Avoid bogus out-of-sequence timeline ID> errors in standby
+ mode (Heikki Linnakangas)
+
+
+
+
+
+ Prevent the postmaster from launching new child processes after it's
+ received a shutdown signal (Tom Lane)
+
+
+
+ This mistake could result in shutdown taking longer than it should, or
+ even never completing at all without additional user action.
+
+
+
+
+
+ Fix the syslogger process to not fail when
+ log_rotation_age> exceeds 2^31 milliseconds (about 25 days)
+ (Tom Lane)
+
+
+
+
+
+ Fix WaitLatch()> to return promptly when the requested
+ timeout expires (Jeff Janes, Tom Lane)
+
+
+
+ With the previous coding, a steady stream of non-wait-terminating
+ interrupts could delay return from WaitLatch()>
+ indefinitely. This has been shown to be a problem for the autovacuum
+ launcher process, and might cause trouble elsewhere as well.
+
+
+
+
+
+ Avoid corruption of internal hash tables when out of memory
+ (Hitoshi Harada)
+
+
+
+
+
+ Prevent file descriptors for dropped tables from being held open past
+ transaction end (Tom Lane)
+
+
+
+ This should reduce problems with long-since-dropped tables continuing
+ to occupy disk space.
+
+
+
+
+
+ Prevent database-wide crash and restart when a new child process is
+ unable to create a pipe for its latch (Tom Lane)
+
+
+
+ Although the new process must fail, there is no good reason to force a
+ database-wide restart, so avoid that. This improves robustness when
+ the kernel is nearly out of file descriptors.
+
+
+
+
+
+ Avoid planner crash with joins to unflattened subqueries (Tom Lane)
+
+
+
+
+
+ Fix planning of non-strict equivalence clauses above outer joins
+ (Tom Lane)
+
+
+
+ The planner could derive incorrect constraints from a clause equating
+ a non-strict construct to something else, for example
+ WHERE COALESCE(foo, 0) = 0>
+ when foo> is coming from the nullable side of an outer join.
+ 9.2 showed this type of error in more cases than previous releases,
+ but the basic bug has been there for a long time.
+
+
+
+
+
+ Fix SELECT DISTINCT> with index-optimized
+ MIN>/MAX> on an inheritance tree (Tom Lane)
+
+
+
+ The planner would fail with failed to re-find MinMaxAggInfo
+ record> given this combination of factors.
+
+
+
+
+
+ Make sure the planner sees implicit and explicit casts as equivalent
+ for all purposes, except in the minority of cases where there's
+ actually a semantic difference (Tom Lane)
+
+
+
+
+
+ Include join clauses when considering whether partial indexes can be
+ used for a query (Tom Lane)
+
+
+
+ A strict join clause can be sufficient to establish an
+ x> IS NOT NULL> predicate, for example.
+ This fixes a planner regression in 9.2, since previous versions could
+ make comparable deductions.
+
+
+
+
+
+ Limit growth of planning time when there are many indexable join
+ clauses for the same index (Tom Lane)
+
+
+
+
+
+ Improve planner's ability to prove exclusion constraints from
+ equivalence classes (Tom Lane)
+
+
+
+
+
+ Fix partial-row matching in hashed subplans to handle cross-type cases
+ correctly (Tom Lane)
+
+
+
+ This affects multicolumn NOT IN> subplans, such as
+ WHERE (a, b) NOT IN (SELECT x, y FROM ...)>
+ when for instance b> and y> are int4>
+ and int8> respectively. This mistake led to wrong answers
+ or crashes depending on the specific datatypes involved.
+
+
+
+
+
+ Fix btree mark/restore functions to handle array keys (Tom Lane)
+
+
+
+ This oversight could result in wrong answers from merge joins whose
+ inner side is an index scan using an
+ indexed_column> =
+ ANY(array>) condition.
+
+
+
+
+
+ Revert patch for taking fewer snapshots (Tom Lane)
+
+
+
+ The 9.2 change to reduce the number of snapshots taken during query
+ execution led to some anomalous behaviors not seen in previous
+ releases, because execution would proceed with a snapshot acquired
+ before locking the tables used by the query. Thus, for example,
+ a query would not be guaranteed to see updates committed by a
+ preceding transaction even if that transaction had exclusive lock.
+ We'll probably revisit this in future releases, but meanwhile put it
+ back the way it was before 9.2.
+
+
+
+
+
+ Acquire buffer lock when re-fetching the old tuple for an
+ AFTER ROW UPDATE/DELETE> trigger (Andres Freund)
+
+
+
+ In very unusual circumstances, this oversight could result in passing
+ incorrect data to a trigger WHEN> condition, or to the
+ precheck logic for a foreign-key enforcement trigger. That could
+ result in a crash, or in an incorrect decision about whether to
+ fire the trigger.
+
+
+
+
+
+ Fix ALTER COLUMN TYPE> to handle inherited check
+ constraints properly (Pavan Deolasee)
+
+
+
+ This worked correctly in pre-8.4 releases, and now works correctly
+ in 8.4 and later.
+
+
+
+
+
+ Fix ALTER EXTENSION SET SCHEMA>'s failure to move some
+ subsidiary objects into the new schema (Álvaro Herrera, Dimitri
+ Fontaine)
+
+
+
+
+
+ Handle CREATE TABLE AS EXECUTE> correctly in extended query
+ protocol (Tom Lane)
+
+
+
+
+
+ Don't modify the input parse tree in DROP RULE IF NOT
+ EXISTS> and DROP TRIGGER IF NOT EXISTS> (Tom Lane)
+
+
+
+ This mistake would cause errors if a cached statement of one of these
+ types was re-executed.
+
+
+
+
+
+ Fix REASSIGN OWNED> to handle grants on tablespaces
+ (Álvaro Herrera)
+
+
+
+
+
+ Ignore incorrect pg_attribute> entries for system
+ columns for views (Tom Lane)
+
+
+
+ Views do not have any system columns. However, we forgot to
+ remove such entries when converting a table to a view. That's fixed
+ properly for 9.3 and later, but in previous branches we need to defend
+ against existing mis-converted views.
+
+
+
+
+
+ Fix rule printing to dump INSERT INTO table>
+ DEFAULT VALUES correctly (Tom Lane)
+
+
+
+
+
+ Guard against stack overflow when there are too many
+ UNION>/INTERSECT>/EXCEPT> clauses
+ in a query (Tom Lane)
+
+
+
+
+
+ Prevent platform-dependent failures when dividing the minimum possible
+ integer value by -1 (Xi Wang, Tom Lane)
+
+
+
+
+
+ Fix possible access past end of string in date parsing
+ (Hitoshi Harada)
+
+
+
+
+
+ Fix failure to advance XID epoch if XID wraparound happens during a
+ checkpoint and wal_level> is hot_standby>
+ (Tom Lane, Andres Freund)
+
+
+
+ While this mistake had no particular impact on
+ PostgreSQL itself, it was bad for
+ applications that rely on txid_current()> and related
+ functions: the TXID value would appear to go backwards.
+
+
+
+
+
+ Fix pg_terminate_backend()> and
+ pg_cancel_backend()> to not throw error for a non-existent
+ target process (Josh Kupershmidt)
+
+
+
+ This case already worked as intended when called by a superuser,
+ but not so much when called by ordinary users.
+
+
+
+
+
+ Fix display of
+ pg_stat_replication>.sync_state> at a
+ page boundary (Kyotaro Horiguchi)
+
+
+
+
+
+ Produce an understandable error message if the length of the path name
+ for a Unix-domain socket exceeds the platform-specific limit
+ (Tom Lane, Andrew Dunstan)
+
+
+
+ Formerly, this would result in something quite unhelpful, such as
+ Non-recoverable failure in name resolution>.
+
+
+
+
+
+ Fix memory leaks when sending composite column values to the client
+ (Tom Lane)
+
+
+
+
+
+ Save some cycles by not searching for subtransaction locks at commit
+ (Simon Riggs)
+
+
+
+ In a transaction holding many exclusive locks, this useless activity
+ could be quite costly.
+
+
+
+
+
+ Make pg_ctl> more robust about reading the
+ postmaster.pid> file (Heikki Linnakangas)
+
+
+
+ This fixes race conditions and possible file descriptor leakage.
+
+
+
+
+
+ Fix possible crash in psql> if incorrectly-encoded data
+ is presented and the client_encoding> setting is a
+ client-only encoding, such as SJIS (Jiang Guiqing)
+
+
+
+
+
+ Make pg_dump> dump SEQUENCE SET> items in
+ the data not pre-data section of the archive (Tom Lane)
+
+
+
+ This fixes an undesirable inconsistency between the meanings of
+
+
+
+
+
+ Fix pg_dump>'s handling of DROP DATABASE>
+ commands in
+
+
+ Beginning in 9.2.0, pg_dump --clean> would issue a
+ DROP DATABASE> command, which was either useless or
+ dangerous depending on the usage scenario. It no longer does that.
+ This change also fixes the combination of
+
+
+
+
+ Fix pg_dump> for views with circular dependencies and
+ no relation options (Tom Lane)
+
+
+
+ The previous fix to dump relation options when a view is
+ involved in a circular dependency didn't work right for the case
+ that the view has no options; it emitted ALTER VIEW foo
+ SET ()> which is invalid syntax.
+
+
+
+
+
+ Fix bugs in the restore.sql> script emitted by
+ pg_dump> in tar> output format (Tom Lane)
+
+
+
+ The script would fail outright on tables whose names include
+ upper-case characters. Also, make the script capable of restoring
+ data in
+
+
+
+
+ Fix pg_restore> to accept POSIX-conformant
+ tar> files (Brian Weaver, Tom Lane)
+
+
+
+ The original coding of pg_dump>'s tar>
+ output mode produced files that are not fully conformant with the
+ POSIX standard. This has been corrected for version 9.3. This
+ patch updates previous branches so that they will accept both the
+ incorrect and the corrected formats, in hopes of avoiding
+ compatibility problems when 9.3 comes out.
+
+
+
+
+
+ Fix tar> files emitted by pg_basebackup> to
+ be POSIX conformant (Brian Weaver, Tom Lane)
+
+
+
+
+
+ Fix pg_resetxlog> to locate postmaster.pid>
+ correctly when given a relative path to the data directory (Tom Lane)
+
+
+
+ This mistake could lead to pg_resetxlog> not noticing
+ that there is an active postmaster using the data directory.
+
+
+
+
+
+ Fix libpq>'s lo_import()> and
+ lo_export()> functions to report file I/O errors properly
+ (Tom Lane)
+
+
+
+
+
+ Fix ecpg>'s processing of nested structure pointer
+ variables (Muhammad Usama)
+
+
+
+
+
+ Fix ecpg>'s ecpg_get_data> function to
+ handle arrays properly (Michael Meskes)
+
+
+
+
+
+ Prevent pg_upgrade> from trying to process TOAST tables
+ for system catalogs (Bruce Momjian)
+
+
+
+ This fixes an error seen when the information_schema> has
+ been dropped and recreated. Other failures were also possible.
+
+
+
+
+
+ Improve pg_upgrade> performance by setting
+ synchronous_commit> to off> in the new cluster
+ (Bruce Momjian)
+
+
+
+
+
+ Make contrib/pageinspect>'s btree page inspection
+ functions take buffer locks while examining pages (Tom Lane)
+
+
+
+
+
+ Work around unportable behavior of malloc(0)> and
+ realloc(NULL, 0)> (Tom Lane)
+
+
+
+ On platforms where these calls return NULL>, some code
+ mistakenly thought that meant out-of-memory.
+ This is known to have broken pg_dump> for databases
+ containing no user-defined aggregates. There might be other cases
+ as well.
+
+
+
+
+
+ Ensure that make install> for an extension creates the
+ extension> installation directory (Cédric Villemain)
+
+
+
+ Previously, this step was missed if MODULEDIR> was set in
+ the extension's Makefile.
+
+
+
+
+
+ Fix pgxs> support for building loadable modules on AIX
+ (Tom Lane)
+
+
+
+ Building modules outside the original source tree didn't work on AIX.
+
+
+
+
+
+ Update time zone data files to tzdata> release 2012j
+ for DST law changes in Cuba, Israel, Jordan, Libya, Palestine, Western
+ Samoa, and portions of Brazil.
+
+
+
+
+
+
+
+
Release 9.2.1