diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2013-12-02 15:54:08 -0500 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2013-12-02 15:54:08 -0500 |
commit | 81fb8ff617df7a474a6a9dee9c7edf088fcaf06a (patch) | |
tree | 115ce7807117e60add1c427cbdd24b320e362104 | |
parent | 3d974e303da29ff97822212ab8722d6e366c5119 (diff) | |
download | postgresql-81fb8ff617df7a474a6a9dee9c7edf088fcaf06a.tar.gz postgresql-81fb8ff617df7a474a6a9dee9c7edf088fcaf06a.zip |
Update release notes for 9.3.2, 9.2.6, 9.1.11, 9.0.15, 8.4.19.
-rw-r--r-- | doc/src/sgml/release-8.4.sgml | 242 | ||||
-rw-r--r-- | doc/src/sgml/release-9.0.sgml | 291 |
2 files changed, 494 insertions, 39 deletions
diff --git a/doc/src/sgml/release-8.4.sgml b/doc/src/sgml/release-8.4.sgml index 45972c23959..5762e01f621 100644 --- a/doc/src/sgml/release-8.4.sgml +++ b/doc/src/sgml/release-8.4.sgml @@ -1,6 +1,207 @@ <!-- doc/src/sgml/release-8.4.sgml --> <!-- See header comment in release.sgml about typical markup --> + <sect1 id="release-8-4-19"> + <title>Release 8.4.19</title> + + <note> + <title>Release Date</title> + <simpara>2013-12-05</simpara> + </note> + + <para> + This release contains a variety of fixes from 8.4.18. + 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.19</title> + + <para> + A dump/restore is not required for those running 8.4.X. + </para> + + <para> + However, this release corrects a potential data corruption + issue. See the first changelog entry below to find out whether + your installation has been affected and what steps you can take if so. + </para> + + <para> + Also, if you are upgrading from a version earlier than 8.4.17, + see the release notes for 8.4.17. + </para> + + </sect2> + + <sect2> + <title>Changes</title> + + <itemizedlist> + + <listitem> + <para> + Fix <command>VACUUM</>'s tests to see whether it can + update <structfield>relfrozenxid</> (Andres Freund) + </para> + + <para> + In some cases <command>VACUUM</> (either manual or autovacuum) could + incorrectly advance a table's <structfield>relfrozenxid</> value, + allowing tuples to escape freezing, causing those rows to become + invisible once 2^31 transactions have elapsed. The probability of + data loss is fairly low since multiple incorrect advancements would + need to happen before actual loss occurs, but it's not zero. Users + upgrading from release 8.4.8 or earlier are not affected, but all later + versions contain the bug. + </para> + + <para> + The issue can be ameliorated by, after upgrading, vacuuming all tables + in all databases while having <link + linkend="guc-vacuum-freeze-table-age"><varname>vacuum_freeze_table_age</></link> + set to zero. This will fix any latent corruption but will not be able + to fix all pre-existing data errors. However, an installation can be + presumed safe after performing this vacuuming if it has executed fewer + than 2^31 update transactions in its lifetime (check this with + <literal>SELECT txid_current() < 2^31</>). + </para> + </listitem> + + <listitem> + <para> + Fix race condition in GIN index posting tree page deletion (Heikki + Linnakangas) + </para> + + <para> + This could lead to transient wrong answers or query failures. + </para> + </listitem> + + <listitem> + <para> + Avoid flattening a subquery whose <literal>SELECT</> list contains a + volatile function wrapped inside a sub-<literal>SELECT</> (Tom Lane) + </para> + + <para> + This avoids unexpected results due to extra evaluations of the + volatile function. + </para> + </listitem> + + <listitem> + <para> + Fix planner's processing of non-simple-variable subquery outputs + nested within outer joins (Tom Lane) + </para> + + <para> + This error could lead to incorrect plans for queries involving + multiple levels of subqueries within <literal>JOIN</> syntax. + </para> + </listitem> + + <listitem> + <para> + Fix premature deletion of temporary files (Andres Freund) + </para> + </listitem> + + <listitem> + <para> + Fix possible read past end of memory in rule printing (Peter Eisentraut) + </para> + </listitem> + + <listitem> + <para> + Fix array slicing of <type>int2vector</> and <type>oidvector</> values + (Tom Lane) + </para> + + <para> + Expressions of this kind are now implicitly promoted to + regular <type>int2</> or <type>oid</> arrays. + </para> + </listitem> + + <listitem> + <para> + Fix incorrect behaviors when using a SQL-standard, simple GMT offset + timezone (Tom Lane) + </para> + + <para> + In some cases, the system would use the simple GMT offset value when + it should have used the regular timezone setting that had prevailed + before the simple offset was selected. This change also causes + the <function>timeofday</> function to honor the simple GMT offset + zone. + </para> + </listitem> + + <listitem> + <para> + Prevent possible misbehavior when logging translations of Windows + error codes (Tom Lane) + </para> + </listitem> + + <listitem> + <para> + Properly quote generated command lines in <application>pg_ctl</> + (Naoya Anzai and Tom Lane) + </para> + + <para> + This fix applies only to Windows. + </para> + </listitem> + + <listitem> + <para> + Fix <application>pg_dumpall</> to work when a source database + sets <link + linkend="guc-default-transaction-read-only"><varname>default_transaction_read_only</></link> + via <command>ALTER DATABASE SET</> (Kevin Grittner) + </para> + + <para> + Previously, the generated script would fail during restore. + </para> + </listitem> + + <listitem> + <para> + Fix <application>ecpg</>'s processing of lists of variables + declared <type>varchar</> (Zoltán Böszörményi) + </para> + </listitem> + + <listitem> + <para> + Make <filename>contrib/lo</> defend against incorrect trigger definitions + (Marc Cousin) + </para> + </listitem> + + <listitem> + <para> + Update time zone data files to <application>tzdata</> release 2013h + for DST law changes in Argentina, Brazil, Jordan, Libya, + Liechtenstein, Morocco, and Palestine. Also, new timezone + abbreviations WIB, WIT, WITA for Indonesia. + </para> + </listitem> + + </itemizedlist> + + </sect2> + </sect1> + <sect1 id="release-8-4-18"> <title>Release 8.4.18</title> @@ -23,8 +224,8 @@ </para> <para> - Also, if you are upgrading from a version earlier than 8.4.10, - see the release notes for 8.4.10. + However, if you are upgrading from a version earlier than 8.4.17, + see the release notes for 8.4.17. </para> </sect2> @@ -36,12 +237,13 @@ <listitem> <para> - Prevent downcasing of non-ASCII non-double-quoted identifiers in - multi-byte encodings (Andrew Dunstan) + Prevent corruption of multi-byte characters when attempting to + case-fold identifiers (Andrew Dunstan) </para> <para> - The previous behavior was wrong and confusing. + <productname>PostgreSQL</> case-folds non-ASCII characters only + when using a single-byte server encoding. </para> </listitem> @@ -61,7 +263,7 @@ <listitem> <para> - Fix libpq SSL deadlock bug (Stephen Frost) + Fix deadlock bug in libpq when using SSL (Stephen Frost) </para> </listitem> @@ -85,21 +287,24 @@ </para> <para> - Previously such push downs could generate errors. + Subqueries of a <literal>UNION</> or <literal>INTERSECT</> that + contain set-returning functions or volatile functions in their + <literal>SELECT</> lists could be improperly optimized, leading to + run-time errors or incorrect query results. </para> </listitem> <listitem> <para> - Fix rare <literal>GROUP BY</> query error caused by improperly - processed data type modifiers (Tom Lane) + Fix rare case of <quote>failed to locate grouping columns</> + planner failure (Tom Lane) </para> </listitem> <listitem> <para> - Allow view dump code to better handle dropped columns on base tables - (Tom Lane) + Improve view dumping code's handling of dropped columns in referenced + tables (Tom Lane) </para> </listitem> @@ -164,12 +369,16 @@ <listitem> <para> - Allow various spellings of infinity on all platforms (Tom Lane) + Ensure that floating-point data input accepts standard spellings + of <quote>infinity</> on all platforms (Tom Lane) </para> <para> - Supported infinity values are "inf", "+inf", "-inf", "infinity", - "+infinity", and "-infinity". + The C99 standard says that allowable spellings are <literal>inf</>, + <literal>+inf</>, <literal>-inf</>, <literal>infinity</>, + <literal>+infinity</>, and <literal>-infinity</>. Make sure we + recognize these even if the platform's <function>strtod</> function + doesn't. </para> </listitem> @@ -183,9 +392,8 @@ <listitem> <para> Update time zone data files to <application>tzdata</> release 2013d - for DST law changes in DST law changes in Israel, Morocco, Palestine, - Paraguay. Also, historical zone data corrections for Macquarie Island - (Tom Lane) + for DST law changes in Israel, Morocco, Palestine, and Paraguay. + Also, historical zone data corrections for Macquarie Island. </para> </listitem> diff --git a/doc/src/sgml/release-9.0.sgml b/doc/src/sgml/release-9.0.sgml index fdd6baafb52..6dc1f6976dd 100644 --- a/doc/src/sgml/release-9.0.sgml +++ b/doc/src/sgml/release-9.0.sgml @@ -1,6 +1,244 @@ <!-- doc/src/sgml/release-9.0.sgml --> <!-- See header comment in release.sgml about typical markup --> + <sect1 id="release-9-0-15"> + <title>Release 9.0.15</title> + + <note> + <title>Release Date</title> + <simpara>2013-12-05</simpara> + </note> + + <para> + This release contains a variety of fixes from 9.0.14. + 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.15</title> + + <para> + A dump/restore is not required for those running 9.0.X. + </para> + + <para> + However, this release corrects a number of potential data corruption + issues. See the first two changelog entries below to find out whether + your installation has been affected and what steps you can take if so. + </para> + + <para> + Also, if you are upgrading from a version earlier than 9.0.13, + see the release notes for 9.0.13. + </para> + + </sect2> + + <sect2> + <title>Changes</title> + + <itemizedlist> + + <listitem> + <para> + Fix <command>VACUUM</>'s tests to see whether it can + update <structfield>relfrozenxid</> (Andres Freund) + </para> + + <para> + In some cases <command>VACUUM</> (either manual or autovacuum) could + incorrectly advance a table's <structfield>relfrozenxid</> value, + allowing tuples to escape freezing, causing those rows to become + invisible once 2^31 transactions have elapsed. The probability of + data loss is fairly low since multiple incorrect advancements would + need to happen before actual loss occurs, but it's not zero. Users + upgrading from releases 9.0.4 or 8.4.8 or earlier are not affected, but + all later versions contain the bug. + </para> + + <para> + The issue can be ameliorated by, after upgrading, vacuuming all tables + in all databases while having <link + linkend="guc-vacuum-freeze-table-age"><varname>vacuum_freeze_table_age</></link> + set to zero. This will fix any latent corruption but will not be able + to fix all pre-existing data errors. However, an installation can be + presumed safe after performing this vacuuming if it has executed fewer + than 2^31 update transactions in its lifetime (check this with + <literal>SELECT txid_current() < 2^31</>). + </para> + </listitem> + + <listitem> + <para> + Fix initialization of <filename>pg_clog</> and <filename>pg_subtrans</> + during hot standby startup (Andres Freund, Heikki Linnakangas) + </para> + + <para> + This bug can cause data loss on standby servers at the moment they + start to accept hot-standby queries, by marking committed transactions + as uncommitted. The likelihood of such corruption is small unless, at + the time of standby startup, the primary server has executed many + updating transactions since its last checkpoint. Symptoms include + missing rows, rows that should have been deleted being still visible, + and obsolete versions of updated rows being still visible alongside + their newer versions. + </para> + + <para> + This bug was introduced in versions 9.3.0, 9.2.5, 9.1.10, and 9.0.14. + Standby servers that have only been running earlier releases are not + at risk. It's recommended that standby servers that have ever run any + of the buggy releases be re-cloned from the primary (e.g., with a new + base backup) after upgrading. + </para> + </listitem> + + <listitem> + <para> + Truncate <filename>pg_multixact</> contents during WAL replay + (Andres Freund) + </para> + + <para> + This avoids ever-increasing disk space consumption in standby servers. + </para> + </listitem> + + <listitem> + <para> + Fix race condition in GIN index posting tree page deletion (Heikki + Linnakangas) + </para> + + <para> + This could lead to transient wrong answers or query failures. + </para> + </listitem> + + <listitem> + <para> + Avoid flattening a subquery whose <literal>SELECT</> list contains a + volatile function wrapped inside a sub-<literal>SELECT</> (Tom Lane) + </para> + + <para> + This avoids unexpected results due to extra evaluations of the + volatile function. + </para> + </listitem> + + <listitem> + <para> + Fix planner's processing of non-simple-variable subquery outputs + nested within outer joins (Tom Lane) + </para> + + <para> + This error could lead to incorrect plans for queries involving + multiple levels of subqueries within <literal>JOIN</> syntax. + </para> + </listitem> + + <listitem> + <para> + Fix premature deletion of temporary files (Andres Freund) + </para> + </listitem> + + <listitem> + <para> + Fix possible read past end of memory in rule printing (Peter Eisentraut) + </para> + </listitem> + + <listitem> + <para> + Fix array slicing of <type>int2vector</> and <type>oidvector</> values + (Tom Lane) + </para> + + <para> + Expressions of this kind are now implicitly promoted to + regular <type>int2</> or <type>oid</> arrays. + </para> + </listitem> + + <listitem> + <para> + Fix incorrect behaviors when using a SQL-standard, simple GMT offset + timezone (Tom Lane) + </para> + + <para> + In some cases, the system would use the simple GMT offset value when + it should have used the regular timezone setting that had prevailed + before the simple offset was selected. This change also causes + the <function>timeofday</> function to honor the simple GMT offset + zone. + </para> + </listitem> + + <listitem> + <para> + Prevent possible misbehavior when logging translations of Windows + error codes (Tom Lane) + </para> + </listitem> + + <listitem> + <para> + Properly quote generated command lines in <application>pg_ctl</> + (Naoya Anzai and Tom Lane) + </para> + + <para> + This fix applies only to Windows. + </para> + </listitem> + + <listitem> + <para> + Fix <application>pg_dumpall</> to work when a source database + sets <link + linkend="guc-default-transaction-read-only"><varname>default_transaction_read_only</></link> + via <command>ALTER DATABASE SET</> (Kevin Grittner) + </para> + + <para> + Previously, the generated script would fail during restore. + </para> + </listitem> + + <listitem> + <para> + Fix <application>ecpg</>'s processing of lists of variables + declared <type>varchar</> (Zoltán Böszörményi) + </para> + </listitem> + + <listitem> + <para> + Make <filename>contrib/lo</> defend against incorrect trigger definitions + (Marc Cousin) + </para> + </listitem> + + <listitem> + <para> + Update time zone data files to <application>tzdata</> release 2013h + for DST law changes in Argentina, Brazil, Jordan, Libya, + Liechtenstein, Morocco, and Palestine. Also, new timezone + abbreviations WIB, WIT, WITA for Indonesia. + </para> + </listitem> + + </itemizedlist> + + </sect2> + </sect1> + <sect1 id="release-9-0-14"> <title>Release 9.0.14</title> @@ -23,8 +261,8 @@ </para> <para> - Also, if you are upgrading from a version earlier than 9.0.6, - see the release notes for 9.0.6. + However, if you are upgrading from a version earlier than 9.0.13, + see the release notes for 9.0.13. </para> </sect2> @@ -36,12 +274,13 @@ <listitem> <para> - Prevent downcasing of non-ASCII non-double-quoted identifiers in - multi-byte encodings (Andrew Dunstan) + Prevent corruption of multi-byte characters when attempting to + case-fold identifiers (Andrew Dunstan) </para> <para> - The previous behavior was wrong and confusing. + <productname>PostgreSQL</> case-folds non-ASCII characters only + when using a single-byte server encoding. </para> </listitem> @@ -68,13 +307,13 @@ <listitem> <para> - Fix libpq SSL deadlock bug (Stephen Frost) + Fix deadlock bug in libpq when using SSL (Stephen Frost) </para> </listitem> <listitem> <para> - Fix possible SSL network stack corruption in threaded libpq applications + Fix possible SSL state corruption in threaded libpq applications (Nick Phillips, Stephen Frost) </para> </listitem> @@ -99,21 +338,24 @@ </para> <para> - Previously such push downs could generate errors. + Subqueries of a <literal>UNION</> or <literal>INTERSECT</> that + contain set-returning functions or volatile functions in their + <literal>SELECT</> lists could be improperly optimized, leading to + run-time errors or incorrect query results. </para> </listitem> <listitem> <para> - Fix rare <literal>GROUP BY</> query error caused by improperly - processed data type modifiers (Tom Lane) + Fix rare case of <quote>failed to locate grouping columns</> + planner failure (Tom Lane) </para> </listitem> <listitem> <para> - Allow view dump code to better handle dropped columns on base tables - (Tom Lane) + Improve view dumping code's handling of dropped columns in referenced + tables (Tom Lane) </para> </listitem> @@ -193,8 +435,9 @@ <para> Specifically, lessen keyword restrictions for role names, language names, <command>EXPLAIN</> and <command>COPY</> options, and - <command>SET</> values. This allows <literal>COPY ... (FORMAT - BINARY)</> previously <literal>BINARY</> required single-quotes. + <command>SET</> values. This allows <literal>COPY ... (FORMAT + BINARY)</> to work as expected; previously <literal>BINARY</> needed + to be quoted. </para> </listitem> @@ -214,8 +457,9 @@ <listitem> <para> - Improve analyze statistics generation after a cancelled file truncate - request (Kevin Grittner) + Ensure that <command>VACUUM ANALYZE</> still runs the ANALYZE phase + if its attempt to truncate the file is cancelled due to lock conflicts + (Kevin Grittner) </para> </listitem> @@ -228,12 +472,16 @@ <listitem> <para> - Allow various spellings of infinity on all platforms (Tom Lane) + Ensure that floating-point data input accepts standard spellings + of <quote>infinity</> on all platforms (Tom Lane) </para> <para> - Supported infinity values are "inf", "+inf", "-inf", "infinity", - "+infinity", and "-infinity". + The C99 standard says that allowable spellings are <literal>inf</>, + <literal>+inf</>, <literal>-inf</>, <literal>infinity</>, + <literal>+infinity</>, and <literal>-infinity</>. Make sure we + recognize these even if the platform's <function>strtod</> function + doesn't. </para> </listitem> @@ -247,9 +495,8 @@ <listitem> <para> Update time zone data files to <application>tzdata</> release 2013d - for DST law changes in DST law changes in Israel, Morocco, Palestine, - Paraguay. Also, historical zone data corrections for Macquarie Island - (Tom Lane) + for DST law changes in Israel, Morocco, Palestine, and Paraguay. + Also, historical zone data corrections for Macquarie Island. </para> </listitem> |