diff options
-rw-r--r-- | doc/src/sgml/release-8.3.sgml | 156 | ||||
-rw-r--r-- | doc/src/sgml/release-8.4.sgml | 197 | ||||
-rw-r--r-- | doc/src/sgml/release-9.0.sgml | 249 | ||||
-rw-r--r-- | doc/src/sgml/release-9.1.sgml | 309 | ||||
-rw-r--r-- | doc/src/sgml/release-9.2.sgml | 438 |
5 files changed, 1349 insertions, 0 deletions
diff --git a/doc/src/sgml/release-8.3.sgml b/doc/src/sgml/release-8.3.sgml index 082dc349bc..7d9764c987 100644 --- a/doc/src/sgml/release-8.3.sgml +++ b/doc/src/sgml/release-8.3.sgml @@ -1,6 +1,162 @@ <!-- doc/src/sgml/release-8.3.sgml --> <!-- See header comment in release.sgml about typical markup --> + <sect1 id="release-8-3-23"> + <title>Release 8.3.23</title> + + <note> + <title>Release Date</title> + <simpara>2013-02-07</simpara> + </note> + + <para> + This release contains a variety of fixes from 8.3.22. + For information about new features in the 8.3 major release, see + <xref linkend="release-8-3">. + </para> + + <para> + This is expected to be the last <productname>PostgreSQL</> release + in the 8.3.X series. Users are encouraged to update to a newer + release branch soon. + </para> + + <sect2> + <title>Migration to Version 8.3.23</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 SQL grammar to allow subscripting or field selection from a + sub-SELECT result (Tom Lane) + </para> + </listitem> + + <listitem> + <para> + Protect against race conditions when scanning + <structname>pg_tablespace</> (Stephen Frost, Tom Lane) + </para> + + <para> + <command>CREATE DATABASE</> and <command>DROP DATABASE</> could + misbehave if there were concurrent updates of + <structname>pg_tablespace</> entries. + </para> + </listitem> + + <listitem> + <para> + Prevent <command>DROP OWNED</> from trying to drop whole databases or + tablespaces (Álvaro Herrera) + </para> + + <para> + For safety, ownership of these objects must be reassigned, not dropped. + </para> + </listitem> + + <listitem> + <para> + Prevent misbehavior when a <symbol>RowExpr</> or <symbol>XmlExpr</> + is parse-analyzed twice (Andres Freund, Tom Lane) + </para> + + <para> + This mistake could be user-visible in contexts such as + <literal>CREATE TABLE LIKE INCLUDING INDEXES</>. + </para> + </listitem> + + <listitem> + <para> + Improve defenses against integer overflow in hashtable sizing + calculations (Jeff Davis) + </para> + </listitem> + + <listitem> + <para> + Ensure that non-ASCII prompt strings are translated to the correct + code page on Windows (Alexander Law, Noah Misch) + </para> + + <para> + This bug affected <application>psql</> and some other client programs. + </para> + </listitem> + + <listitem> + <para> + Fix possible crash in <application>psql</>'s <command>\?</> command + when not connected to a database (Meng Qingzhong) + </para> + </listitem> + + <listitem> + <para> + Fix one-byte buffer overrun in <application>libpq</>'s + <function>PQprintTuples</> (Xi Wang) + </para> + + <para> + This ancient function is not used anywhere by + <productname>PostgreSQL</> itself, but it might still be used by some + client code. + </para> + </listitem> + + <listitem> + <para> + Rearrange configure's tests for supplied functions so it is not + fooled by bogus exports from libedit/libreadline (Christoph Berg) + </para> + </listitem> + + <listitem> + <para> + Ensure Windows build number increases over time (Magnus Hagander) + </para> + </listitem> + + <listitem> + <para> + Make <application>pgxs</> build executables with the right + <literal>.exe</> suffix when cross-compiling for Windows + (Zoltan Boszormenyi) + </para> + </listitem> + + <listitem> + <para> + Add new timezone abbreviation <literal>FET</> (Tom Lane) + </para> + + <para> + This is now used in some eastern-European time zones. + </para> + </listitem> + + </itemizedlist> + + </sect2> + </sect1> + <sect1 id="release-8-3-22"> <title>Release 8.3.22</title> diff --git a/doc/src/sgml/release-8.4.sgml b/doc/src/sgml/release-8.4.sgml index f6a938c2ce..1d601f1c07 100644 --- a/doc/src/sgml/release-8.4.sgml +++ b/doc/src/sgml/release-8.4.sgml @@ -1,6 +1,203 @@ <!-- doc/src/sgml/release-8.4.sgml --> <!-- See header comment in release.sgml about typical markup --> + <sect1 id="release-8-4-16"> + <title>Release 8.4.16</title> + + <note> + <title>Release Date</title> + <simpara>2013-02-07</simpara> + </note> + + <para> + This release contains a variety of fixes from 8.4.15. + 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.16</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> + Update minimum recovery point when truncating a relation file (Heikki + Linnakangas) + </para> + + <para> + Once data has been discarded, it's no longer safe to stop recovery at + an earlier point in the timeline. + </para> + </listitem> + + <listitem> + <para> + Fix SQL grammar to allow subscripting or field selection from a + sub-SELECT result (Tom Lane) + </para> + </listitem> + + <listitem> + <para> + Protect against race conditions when scanning + <structname>pg_tablespace</> (Stephen Frost, Tom Lane) + </para> + + <para> + <command>CREATE DATABASE</> and <command>DROP DATABASE</> could + misbehave if there were concurrent updates of + <structname>pg_tablespace</> entries. + </para> + </listitem> + + <listitem> + <para> + Prevent <command>DROP OWNED</> from trying to drop whole databases or + tablespaces (Álvaro Herrera) + </para> + + <para> + For safety, ownership of these objects must be reassigned, not dropped. + </para> + </listitem> + + <listitem> + <para> + Fix error in <link + linkend="guc-vacuum-freeze-table-age"><varname>vacuum_freeze_table_age</></link> + implementation (Andres Freund) + </para> + + <para> + The main consequence of this mistake is that lowering <link + linkend="guc-vacuum-freeze-min-age"><varname>vacuum_freeze_min_age</></link> + would cause full-table vacuuming scans to occur much more frequently + than intended. + </para> + </listitem> + + <listitem> + <para> + Prevent misbehavior when a <symbol>RowExpr</> or <symbol>XmlExpr</> + is parse-analyzed twice (Andres Freund, Tom Lane) + </para> + + <para> + This mistake could be user-visible in contexts such as + <literal>CREATE TABLE LIKE INCLUDING INDEXES</>. + </para> + </listitem> + + <listitem> + <para> + Improve defenses against integer overflow in hashtable sizing + calculations (Jeff Davis) + </para> + </listitem> + + <listitem> + <para> + Reject out-of-range dates in <function>to_date()</> (Hitoshi Harada) + </para> + </listitem> + + <listitem> + <para> + Ensure that non-ASCII prompt strings are translated to the correct + code page on Windows (Alexander Law, Noah Misch) + </para> + + <para> + This bug affected <application>psql</> and some other client programs. + </para> + </listitem> + + <listitem> + <para> + Fix possible crash in <application>psql</>'s <command>\?</> command + when not connected to a database (Meng Qingzhong) + </para> + </listitem> + + <listitem> + <para> + Fix one-byte buffer overrun in <application>libpq</>'s + <function>PQprintTuples</> (Xi Wang) + </para> + + <para> + This ancient function is not used anywhere by + <productname>PostgreSQL</> itself, but it might still be used by some + client code. + </para> + </listitem> + + <listitem> + <para> + Make <application>ecpglib</> use translated messages properly + (Chen Huajun) + </para> + </listitem> + + <listitem> + <para> + Properly install <application>ecpg_compat</> and + <application>pgtypes</> libraries on MSVC (Jiang Guiqing) + </para> + </listitem> + + <listitem> + <para> + Rearrange configure's tests for supplied functions so it is not + fooled by bogus exports from libedit/libreadline (Christoph Berg) + </para> + </listitem> + + <listitem> + <para> + Ensure Windows build number increases over time (Magnus Hagander) + </para> + </listitem> + + <listitem> + <para> + Make <application>pgxs</> build executables with the right + <literal>.exe</> suffix when cross-compiling for Windows + (Zoltan Boszormenyi) + </para> + </listitem> + + <listitem> + <para> + Add new timezone abbreviation <literal>FET</> (Tom Lane) + </para> + + <para> + This is now used in some eastern-European time zones. + </para> + </listitem> + + </itemizedlist> + + </sect2> + </sect1> + <sect1 id="release-8-4-15"> <title>Release 8.4.15</title> diff --git a/doc/src/sgml/release-9.0.sgml b/doc/src/sgml/release-9.0.sgml index 495738cd3c..fc0af4edbc 100644 --- a/doc/src/sgml/release-9.0.sgml +++ b/doc/src/sgml/release-9.0.sgml @@ -1,6 +1,255 @@ <!-- doc/src/sgml/release-9.0.sgml --> <!-- See header comment in release.sgml about typical markup --> + <sect1 id="release-9-0-12"> + <title>Release 9.0.12</title> + + <note> + <title>Release Date</title> + <simpara>2013-02-07</simpara> + </note> + + <para> + This release contains a variety of fixes from 9.0.11. + 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.12</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 multiple problems in detection of when a consistent database + state has been reached during WAL replay (Fujii Masao, Heikki + Linnakangas, Simon Riggs, Andres Freund) + </para> + </listitem> + + <listitem> + <para> + Update minimum recovery point when truncating a relation file (Heikki + Linnakangas) + </para> + + <para> + Once data has been discarded, it's no longer safe to stop recovery at + an earlier point in the timeline. + </para> + </listitem> + + <listitem> + <para> + Fix missing cancellations in hot standby mode (Noah Misch, Simon Riggs) + </para> + + <para> + The need to cancel conflicting hot-standby queries would sometimes be + missed, allowing those queries to see inconsistent data. + </para> + </listitem> + + <listitem> + <para> + Fix SQL grammar to allow subscripting or field selection from a + sub-SELECT result (Tom Lane) + </para> + </listitem> + + <listitem> + <para> + Fix performance problems with autovacuum truncation in busy workloads + (Jan Wieck) + </para> + + <para> + Truncation of empty pages at the end of a table requires exclusive + lock, but autovacuum was coded to fail (and release the table lock) + when there are conflicting lock requests. Under load, it is easily + possible that truncation would never occur, resulting in table bloat. + Fix by performing a partial truncation, releasing the lock, then + attempting to re-acquire the lock and continue. This fix also greatly + reduces the average time before autovacuum releases the lock after a + conflicting request arrives. + </para> + </listitem> + + <listitem> + <para> + Protect against race conditions when scanning + <structname>pg_tablespace</> (Stephen Frost, Tom Lane) + </para> + + <para> + <command>CREATE DATABASE</> and <command>DROP DATABASE</> could + misbehave if there were concurrent updates of + <structname>pg_tablespace</> entries. + </para> + </listitem> + + <listitem> + <para> + Prevent <command>DROP OWNED</> from trying to drop whole databases or + tablespaces (Álvaro Herrera) + </para> + + <para> + For safety, ownership of these objects must be reassigned, not dropped. + </para> + </listitem> + + <listitem> + <para> + Fix error in <link + linkend="guc-vacuum-freeze-table-age"><varname>vacuum_freeze_table_age</></link> + implementation (Andres Freund) + </para> + + <para> + The main consequence of this mistake is that lowering <link + linkend="guc-vacuum-freeze-min-age"><varname>vacuum_freeze_min_age</></link> + would cause full-table vacuuming scans to occur much more frequently + than intended. + </para> + </listitem> + + <listitem> + <para> + Prevent misbehavior when a <symbol>RowExpr</> or <symbol>XmlExpr</> + is parse-analyzed twice (Andres Freund, Tom Lane) + </para> + + <para> + This mistake could be user-visible in contexts such as + <literal>CREATE TABLE LIKE INCLUDING INDEXES</>. + </para> + </listitem> + + <listitem> + <para> + Improve defenses against integer overflow in hashtable sizing + calculations (Jeff Davis) + </para> + </listitem> + + <listitem> + <para> + Reject out-of-range dates in <function>to_date()</> (Hitoshi Harada) + </para> + </listitem> + + <listitem> + <para> + Ensure that non-ASCII prompt strings are translated to the correct + code page on Windows (Alexander Law, Noah Misch) + </para> + + <para> + This bug affected <application>psql</> and some other client programs. + </para> + </listitem> + + <listitem> + <para> + Fix possible crash in <application>psql</>'s <command>\?</> command + when not connected to a database (Meng Qingzhong) + </para> + </listitem> + + <listitem> + <para> + Fix <application>pg_upgrade</> to deal with invalid indexes safely + (Bruce Momjian) + </para> + </listitem> + + <listitem> + <para> + Fix one-byte buffer overrun in <application>libpq</>'s + <function>PQprintTuples</> (Xi Wang) + </para> + + <para> + This ancient function is not used anywhere by + <productname>PostgreSQL</> itself, but it might still be used by some + client code. + </para> + </listitem> + + <listitem> + <para> + Make <application>ecpglib</> use translated messages properly + (Chen Huajun) + </para> + </listitem> + + <listitem> + <para> + Properly install <application>ecpg_compat</> and + <application>pgtypes</> libraries on MSVC (Jiang Guiqing) + </para> + </listitem> + + <listitem> + <para> + Include our version of <function>isinf()</> in + <application>libecpg</> if it's not provided by the system + (Jiang Guiqing) + </para> + </listitem> + + <listitem> + <para> + Rearrange configure's tests for supplied functions so it is not + fooled by bogus exports from libedit/libreadline (Christoph Berg) + </para> + </listitem> + + <listitem> + <para> + Ensure Windows build number increases over time (Magnus Hagander) + </para> + </listitem> + + <listitem> + <para> + Make <application>pgxs</> build executables with the right + <literal>.exe</> suffix when cross-compiling for Windows + (Zoltan Boszormenyi) + </para> + </listitem> + + <listitem> + <para> + Add new timezone abbreviation <literal>FET</> (Tom Lane) + </para> + + <para> + This is now used in some eastern-European time zones. + </para> + </listitem> + + </itemizedlist> + + </sect2> + </sect1> + <sect1 id="release-9-0-11"> <title>Release 9.0.11</title> diff --git a/doc/src/sgml/release-9.1.sgml b/doc/src/sgml/release-9.1.sgml index 1143fdfdcd..897b584247 100644 --- a/doc/src/sgml/release-9.1.sgml +++ b/doc/src/sgml/release-9.1.sgml @@ -1,6 +1,315 @@ <!-- doc/src/sgml/release-9.1.sgml --> <!-- See header comment in release.sgml about typical markup --> + <sect1 id="release-9-1-8"> + <title>Release 9.1.8</title> + + <note> + <title>Release Date</title> + <simpara>2013-02-07</simpara> + </note> + + <para> + This release contains a variety of fixes from 9.1.7. + 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.8</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.6, + see the release notes for 9.1.6. + </para> + + </sect2> + + <sect2> + <title>Changes</title> + + <itemizedlist> + + <listitem> + <para> + Fix multiple problems in detection of when a consistent database + state has been reached during WAL replay (Fujii Masao, Heikki + Linnakangas, Simon Riggs, Andres Freund) + </para> + </listitem> + + <listitem> + <para> + Update minimum recovery point when truncating a relation file (Heikki + Linnakangas) + </para> + + <para> + Once data has been discarded, it's no longer safe to stop recovery at + an earlier point in the timeline. + </para> + </listitem> + + <listitem> + <para> + Fix recycling of WAL segments after changing recovery target timeline + (Heikki Linnakangas) + </para> + </listitem> + + <listitem> + <para> + Fix missing cancellations in hot standby mode (Noah Misch, Simon Riggs) + </para> + + <para> + The need to cancel conflicting hot-standby queries would sometimes be + missed, allowing those queries to see inconsistent data. + </para> + </listitem> + + <listitem> + <para> + Prevent recovery pause feature from pausing before users can connect + (Tom Lane) + </para> + </listitem> + + <listitem> + <para> + Fix SQL grammar to allow subscripting or field selection from a + sub-SELECT result (Tom Lane) + </para> + </listitem> + + <listitem> + <para> + Fix performance problems with autovacuum truncation in busy workloads + (Jan Wieck) + </para> + + <para> + Truncation of empty pages at the end of a table requires exclusive + lock, but autovacuum was coded to fail (and release the table lock) + when there are conflicting lock requests. Under load, it is easily + possible that truncation would never occur, resulting in table bloat. + Fix by performing a partial truncation, releasing the lock, then + attempting to re-acquire the lock and continue. This fix also greatly + reduces the average time before autovacuum releases the lock after a + conflicting request arrives. + </para> + </listitem> + + <listitem> + <para> + Protect against race conditions when scanning + <structname>pg_tablespace</> (Stephen Frost, Tom Lane) + </para> + + <para> + <command>CREATE DATABASE</> and <command>DROP DATABASE</> could + misbehave if there were concurrent updates of + <structname>pg_tablespace</> entries. + </para> + </listitem> + + <listitem> + <para> + Prevent <command>DROP OWNED</> from trying to drop whole databases or + tablespaces (Álvaro Herrera) + </para> + + <para> + For safety, ownership of these objects must be reassigned, not dropped. + </para> + </listitem> + + <listitem> + <para> + Fix error in <link + linkend="guc-vacuum-freeze-table-age"><varname>vacuum_freeze_table_age</></link> + implementation (Andres Freund) + </para> + + <para> + The main consequence of this mistake is that lowering <link + linkend="guc-vacuum-freeze-min-age"><varname>vacuum_freeze_min_age</></link> + would cause full-table vacuuming scans to occur much more frequently + than intended. + </para> + </listitem> + + <listitem> + <para> + Prevent misbehavior when a <symbol>RowExpr</> or <symbol>XmlExpr</> + is parse-analyzed twice (Andres Freund, Tom Lane) + </para> + + <para> + This mistake could be user-visible in contexts such as + <literal>CREATE TABLE LIKE INCLUDING INDEXES</>. + </para> + </listitem> + + <listitem> + <para> + Improve defenses against integer overflow in hashtable sizing + calculations (Jeff Davis) + </para> + </listitem> + + <listitem> + <para> + Fix failure to ignore leftover temporary tables after a server crash + (Tom Lane) + </para> + </listitem> + + <listitem> + <para> + Reject out-of-range dates in <function>to_date()</> (Hitoshi Harada) + </para> + </listitem> + + <listitem> + <para> + Fix <function>pg_extension_config_dump()</> to handle + extension-update cases properly (Tom Lane) + </para> + + <para> + This function will now replace any existing entry for the target + table, making it usable in extension update scripts. + </para> + </listitem> + + <listitem> + <para> + Fix PL/Python's handling of functions used as triggers on multiple + tables (Andres Freund) + </para> + </listitem> + + <listitem> + <para> + Ensure that non-ASCII prompt strings are translated to the correct + code page on Windows (Alexander Law, Noah Misch) + </para> + + <para> + This bug affected <application>psql</> and some other client programs. + </para> + </listitem> + + <listitem> + <para> + Fix possible crash in <application>psql</>'s <command>\?</> command + when not connected to a database (Meng Qingzhong) + </para> + </listitem> + + <listitem> + <para> + Fix possible error if a relation file is removed while + <application>pg_basebackup</> is running (Heikki Linnakangas) + </para> + </listitem> + + <listitem> + <para> + Make <application>pg_dump</> exclude data of unlogged tables when + running on a hot-standby server (Magnus Hagander) + </para> + + <para> + This would fail anyway because the data is not available on the standby + server, so it seems most convenient to assume + <option>--no-unlogged-table-data</> automatically. + </para> + </listitem> + + <listitem> + <para> + Fix <application>pg_upgrade</> to deal with invalid indexes safely + (Bruce Momjian) + </para> + </listitem> + + <listitem> + <para> + Fix one-byte buffer overrun in <application>libpq</>'s + <function>PQprintTuples</> (Xi Wang) + </para> + + <para> + This ancient function is not used anywhere by + <productname>PostgreSQL</> itself, but it might still be used by some + client code. + </para> + </listitem> + + <listitem> + <para> + Make <application>ecpglib</> use translated messages properly + (Chen Huajun) + </para> + </listitem> + + <listitem> + <para> + Properly install <application>ecpg_compat</> and + <application>pgtypes</> libraries on MSVC (Jiang Guiqing) + </para> + </listitem> + + <listitem> + <para> + Include our version of <function>isinf()</> in + <application>libecpg</> if it's not provided by the system + (Jiang Guiqing) + </para> + </listitem> + + <listitem> + <para> + Rearrange configure's tests for supplied functions so it is not + fooled by bogus exports from libedit/libreadline (Christoph Berg) + </para> + </listitem> + + <listitem> + <para> + Ensure Windows build number increases over time (Magnus Hagander) + </para> + </listitem> + + <listitem> + <para> + Make <application>pgxs</> build executables with the right + <literal>.exe</> suffix when cross-compiling for Windows + (Zoltan Boszormenyi) + </para> + </listitem> + + <listitem> + <para> + Add new timezone abbreviation <literal>FET</> (Tom Lane) + </para> + + <para> + This is now used in some eastern-European time zones. + </para> + </listitem> + + </itemizedlist> + + </sect2> + </sect1> + <sect1 id="release-9-1-7"> <title>Release 9.1.7</title> diff --git a/doc/src/sgml/release-9.2.sgml b/doc/src/sgml/release-9.2.sgml index 5f4f4baff3..d70ddd66e4 100644 --- a/doc/src/sgml/release-9.2.sgml +++ b/doc/src/sgml/release-9.2.sgml @@ -1,6 +1,444 @@ <!-- doc/src/sgml/release-9.2.sgml --> <!-- See header comment in release.sgml about typical markup --> + <sect1 id="release-9-2-3"> + <title>Release 9.2.3</title> + + <note> + <title>Release Date</title> + <simpara>2013-02-07</simpara> + </note> + + <para> + This release contains a variety of fixes from 9.2.2. + For information about new features in the 9.2 major release, see + <xref linkend="release-9-2">. + </para> + + <sect2> + <title>Migration to Version 9.2.3</title> + + <para> + A dump/restore is not required for those running 9.2.X. + </para> + + <para> + However, if you are upgrading from a version earlier than 9.2.2, + see the release notes for 9.2.2. + </para> + + </sect2> + + <sect2> + <title>Changes</title> + + <itemizedlist> + + <listitem> + <para> + Fix multiple problems in detection of when a consistent database + state has been reached during WAL replay (Fujii Masao, Heikki + Linnakangas, Simon Riggs, Andres Freund) + </para> + </listitem> + + <listitem> + <para> + Fix detection of end-of-backup point when no actual redo work is + required (Heikki Linnakangas) + </para> + + <para> + This mistake could result in incorrect <quote>WAL ends before end of + online backup</> errors. + </para> + </listitem> + + <listitem> + <para> + Update minimum recovery point when truncating a relation file (Heikki + Linnakangas) + </para> + + <para> + Once data has been discarded, it's no longer safe to stop recovery at + an earlier point in the timeline. + </para> + </listitem> + + <listitem> + <para> + Fix recycling of WAL segments after changing recovery target timeline + (Heikki Linnakangas) + </para> + </listitem> + + <listitem> + <para> + Properly restore timeline history files from archive on cascading + standby servers (Heikki Linnakangas) + </para> + </listitem> + + <listitem> + <para> + Fix lock conflict detection on hot-standby servers (Andres Freund, + Robert Haas) + </para> + </listitem> + + <listitem> + <para> + Fix missing cancellations in hot standby mode (Noah Misch, Simon Riggs) + </para> + + <para> + The need to cancel conflicting hot-standby queries would sometimes be + missed, allowing those queries to see inconsistent data. + </para> + </listitem> + + <listitem> + <para> + Prevent recovery pause feature from pausing before users can connect + (Tom Lane) + </para> + </listitem> + + <listitem> + <para> + Fix SQL grammar to allow subscripting or field selection from a + sub-SELECT result (Tom Lane) + </para> + </listitem> + + <listitem> + <para> + Fix performance problems with autovacuum truncation in busy workloads + (Jan Wieck) + </para> + + <para> + Truncation of empty pages at the end of a table requires exclusive + lock, but autovacuum was coded to fail (and release the table lock) + when there are conflicting lock requests. Under load, it is easily + possible that truncation would never occur, resulting in table bloat. + Fix by performing a partial truncation, releasing the lock, then + attempting to re-acquire the lock and continue. This fix also greatly + reduces the average time before autovacuum releases the lock after a + conflicting request arrives. + </para> + </listitem> + + <listitem> + <para> + Improve performance of <function>SPI_execute</> and related + functions, thereby improving PL/pgSQL's <literal>EXECUTE</> + (Heikki Linnakangas, Tom Lane) + </para> + + <para> + Remove some data-copying overhead that was added in 9.2 as a + consequence of revisions in the plan caching mechanism. This + eliminates a performance regression compared to 9.1, and also saves + memory, especially when the query string to be executed contains many + SQL statements. + </para> + + <para> + A side benefit is that multi-statement query strings are now + processed fully serially, that is we complete execution of earlier + statements before running parse analysis and planning on the + following ones. This eliminates a long-standing issue, in that DDL + that should affect the behavior of a later statement will now behave as + expected. + </para> + </listitem> + + <listitem> + <para> + Restore pre-9.2 cost estimates for index usage (Tom Lane) + </para> + + <para> + An ill-considered change of a fudge factor led to undesirably high + cost estimates for use of very large indexes. + </para> + </listitem> + + <listitem> + <para> + Fix intermittent crash in <literal>DROP INDEX CONCURRENTLY</> (Tom Lane) + </para> + </listitem> + + <listitem> + <para> + Fix potential corruption of shared-memory lock table during + <command>CREATE/DROP INDEX CONCURRENTLY</> (Tom Lane) + </para> + </listitem> + + <listitem> + <para> + Fix <command>COPY</>'s multiple-tuple-insertion code for the case of + a tuple larger than page size minus fillfactor (Heikki Linnakangas) + </para> + + <para> + The previous coding could get into an infinite loop. + </para> + </listitem> + + <listitem> + <para> + Protect against race conditions when scanning + <structname>pg_tablespace</> (Stephen Frost, Tom Lane) + </para> + + <para> + <command>CREATE DATABASE</> and <command>DROP DATABASE</> could + misbehave if there were concurrent updates of + <structname>pg_tablespace</> entries. + </para> + </listitem> + + <listitem> + <para> + Prevent <command>DROP OWNED</> from trying to drop whole databases or + tablespaces (Álvaro Herrera) + </para> + + <para> + For safety, ownership of these objects must be reassigned, not dropped. + </para> + </listitem> + + <listitem> + <para> + Fix error in <link + linkend="guc-vacuum-freeze-table-age"><varname>vacuum_freeze_table_age</></link> + implementation (Andres Freund) + </para> + + <para> + The main consequence of this mistake is that lowering <link + linkend="guc-vacuum-freeze-min-age"><varname>vacuum_freeze_min_age</></link> + would cause full-table vacuuming scans to occur much more frequently + than intended. + </para> + </listitem> + + <listitem> + <para> + Prevent misbehavior when a <symbol>RowExpr</> or <symbol>XmlExpr</> + is parse-analyzed twice (Andres Freund, Tom Lane) + </para> + + <para> + This mistake could be user-visible in contexts such as + <literal>CREATE TABLE LIKE INCLUDING INDEXES</>. + </para> + </listitem> + + <listitem> + <para> + Improve defenses against integer overflow in hashtable sizing + calculations (Jeff Davis) + </para> + </listitem> + + <listitem> + <para> + Fix some bugs associated with privileges on datatypes (Tom Lane) + </para> + + <para> + There were some issues with default privileges for types, and + <application>pg_dump</> failed to dump such privileges at all. + </para> + </listitem> + + <listitem> + <para> + Fix failure to ignore leftover temporary tables after a server crash + (Tom Lane) + </para> + </listitem> + + <listitem> + <para> + Fix failure to rotate postmaster log files for size reasons on + Windows (Jeff Janes, Heikki Linnakangas) + </para> + </listitem> + + <listitem> + <para> + Reject out-of-range dates in <function>to_date()</> (Hitoshi Harada) + </para> + </listitem> + + <listitem> + <para> + Fix <function>pg_extension_config_dump()</> to handle + extension-update cases properly (Tom Lane) + </para> + + <para> + This function will now replace any existing entry for the target + table, making it usable in extension update scripts. + </para> + </listitem> + + <listitem> + <para> + Fix PL/pgSQL's reporting of plan-time errors in possibly-simple + expressions (Tom Lane) + </para> + + <para> + The previous coding resulted in sometimes omitting the first line in + the <literal>CONTEXT</> traceback for the error. + </para> + </listitem> + + <listitem> + <para> + Fix PL/Python's handling of functions used as triggers on multiple + tables (Andres Freund) + </para> + </listitem> + + <listitem> + <para> + Ensure that non-ASCII prompt strings are translated to the correct + code page on Windows (Alexander Law, Noah Misch) + </para> + + <para> + This bug affected <application>psql</> and some other client programs. + </para> + </listitem> + + <listitem> + <para> + Fix possible crash in <application>psql</>'s <command>\?</> command + when not connected to a database (Meng Qingzhong) + </para> + </listitem> + + <listitem> + <para> + Fix possible error if a relation file is removed while + <application>pg_basebackup</> is running (Heikki Linnakangas) + </para> + </listitem> + + <listitem> + <para> + Tolerate timeline switches while <literal>pg_basebackup -X fetch</> + is backing up a standby server (Heikki Linnakangas) + </para> + </listitem> + + <listitem> + <para> + Make <application>pg_dump</> exclude data of unlogged tables when + running on a hot-standby server (Magnus Hagander) + </para> + + <para> + This would fail anyway because the data is not available on the standby + server, so it seems most convenient to assume + <option>--no-unlogged-table-data</> automatically. + </para> + </listitem> + + <listitem> + <para> + Fix <application>pg_upgrade</> to deal with invalid indexes safely + (Bruce Momjian) + </para> + </listitem> + + <listitem> + <para> + Fix <application>pg_upgrade</>'s -O/-o options (Bruce Momjian) + </para> + </listitem> + + <listitem> + <para> + Fix one-byte buffer overrun in <application>libpq</>'s + <function>PQprintTuples</> (Xi Wang) + </para> + + <para> + This ancient function is not used anywhere by + <productname>PostgreSQL</> itself, but it might still be used by some + client code. + </para> + </listitem> + + <listitem> + <para> + Make <application>ecpglib</> use translated messages properly + (Chen Huajun) + </para> + </listitem> + + <listitem> + <para> + Properly install <application>ecpg_compat</> and + <application>pgtypes</> libraries on MSVC (Jiang Guiqing) + </para> + </listitem> + + <listitem> + <para> + Include our version of <function>isinf()</> in + <application>libecpg</> if it's not provided by the system + (Jiang Guiqing) + </para> + </listitem> + + <listitem> + <para> + Rearrange configure's tests for supplied functions so it is not + fooled by bogus exports from libedit/libreadline (Christoph Berg) + </para> + </listitem> + + <listitem> + <para> + Ensure Windows build number increases over time (Magnus Hagander) + </para> + </listitem> + + <listitem> + <para> + Make <application>pgxs</> build executables with the right + <literal>.exe</> suffix when cross-compiling for Windows + (Zoltan Boszormenyi) + </para> + </listitem> + + <listitem> + <para> + Add new timezone abbreviation <literal>FET</> (Tom Lane) + </para> + + <para> + This is now used in some eastern-European time zones. + </para> + </listitem> + + </itemizedlist> + + </sect2> + </sect1> + <sect1 id="release-9-2-2"> <title>Release 9.2.2</title> |