]> granicus.if.org Git - postgresql/commitdiff
Release notes for 9.3.3, 9.2.7, 9.1.12, 9.0.16, 8.4.20.
authorTom Lane <tgl@sss.pgh.pa.us>
Mon, 17 Feb 2014 03:08:30 +0000 (22:08 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Mon, 17 Feb 2014 03:08:30 +0000 (22:08 -0500)
doc/src/sgml/release-8.4.sgml
doc/src/sgml/release-9.0.sgml
doc/src/sgml/release-9.1.sgml
doc/src/sgml/release-9.2.sgml
doc/src/sgml/release-9.3.sgml

index 57fd7670c4fd22f7ecb66113209e0adf10768e35..f6accba6cd7098f3037f5a08fe2fe4b203af5580 100644 (file)
@@ -1,6 +1,326 @@
 <!-- doc/src/sgml/release-8.4.sgml -->
 <!-- See header comment in release.sgml about typical markup -->
 
+ <sect1 id="release-8-4-20">
+  <title>Release 8.4.20</title>
+
+  <note>
+  <title>Release Date</title>
+  <simpara>2014-02-20</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 8.4.19.
+   For information about new features in the 8.4 major release, see
+   <xref linkend="release-8-4">.
+  </para>
+
+  <para>
+   The <productname>PostgreSQL</> community will stop releasing updates
+   for the 8.4.X release series in July 2014.
+   Users are encouraged to update to a newer release branch soon.
+  </para>
+
+  <sect2>
+   <title>Migration to Version 8.4.20</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.19,
+    see <xref linkend="release-8-4-19">.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Changes</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Fix possible mis-replay of WAL records when some segments of a
+      relation aren't full size (Greg Stark, Tom Lane)
+     </para>
+
+     <para>
+      The WAL update could be applied to the wrong page, potentially many
+      pages past where it should have been.  Aside from corrupting data,
+      this error has been observed to result in significant <quote>bloat</>
+      of standby servers compared to their masters, due to updates being
+      applied far beyond where the end-of-file should have been.  This
+      failure mode does not appear to be a significant risk during crash
+      recovery, only when initially synchronizing a standby created from a
+      base backup taken from a quickly-changing master.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ensure that insertions into non-leaf GIN index pages write a full-page
+      WAL record when appropriate (Heikki Linnakangas)
+     </para>
+
+     <para>
+      The previous coding risked index corruption in the event of a
+      partial-page write during a system crash.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix race conditions during server process exit (Robert Haas)
+     </para>
+
+     <para>
+      Ensure that signal handlers don't attempt to use the
+      process's <varname>MyProc</> pointer after it's no longer valid.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix unsafe references to <varname>errno</> within error reporting
+      logic (Christian Kruse)
+     </para>
+
+     <para>
+      This would typically lead to odd behaviors such as missing or
+      inappropriate <literal>HINT</> fields.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible crashes from using <function>ereport()</> too early
+      during server startup (Tom Lane)
+     </para>
+
+     <para>
+      The principal case we've seen in the field is a crash if the server
+      is started in a directory it doesn't have permission to read.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Clear retry flags properly in OpenSSL socket write
+      function (Alexander Kukushkin)
+     </para>
+
+     <para>
+      This omission could result in a server lockup after unexpected loss
+      of an SSL-encrypted connection.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix length checking for Unicode identifiers (<literal>U&amp;"..."</>
+      syntax) containing escapes (Tom Lane)
+     </para>
+
+     <para>
+      A spurious truncation warning would be printed for such identifiers
+      if the escaped form of the identifier was too long, but the
+      identifier actually didn't need truncation after de-escaping.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible crash due to invalid plan for nested sub-selects, such
+      as <literal>WHERE (... x IN (SELECT ...) ...) IN (SELECT ...)</>
+      (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ensure that <command>ANALYZE</> creates statistics for a table column
+      even when all the values in it are <quote>too wide</> (Tom Lane)
+     </para>
+
+     <para>
+      <command>ANALYZE</> intentionally omits very wide values from its
+      histogram and most-common-values calculations, but it neglected to do
+      something sane in the case that all the sampled entries are too wide.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In <literal>ALTER TABLE ... SET TABLESPACE</>, allow the database's
+      default tablespace to be used without a permissions check
+      (Stephen Frost)
+     </para>
+
+     <para>
+      <literal>CREATE TABLE</> has always allowed such usage,
+      but <literal>ALTER TABLE</> didn't get the memo.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <quote>cannot accept a set</> error when some arms of
+      a <literal>CASE</> return a set and others don't (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix checks for all-zero client addresses in pgstat functions (Kevin
+      Grittner)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible misclassification of multibyte characters by the text
+      search parser (Tom Lane)
+     </para>
+
+     <para>
+      Non-ASCII characters could be misclassified when using C locale with
+      a multibyte encoding.  On Cygwin, non-C locales could fail as well.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible misbehavior in <function>plainto_tsquery()</>
+      (Heikki Linnakangas)
+     </para>
+
+     <para>
+      Use <function>memmove()</> not <function>memcpy()</> for copying
+      overlapping memory regions.  There have been no field reports of
+      this actually causing trouble, but it's certainly risky.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Accept <literal>SHIFT_JIS</> as an encoding name for locale checking
+      purposes (Tatsuo Ishii)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix misbehavior of <function>PQhost()</> on Windows (Fujii Masao)
+     </para>
+
+     <para>
+      It should return <literal>localhost</> if no host has been specified.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Improve error handling in <application>libpq</> and <application>psql</>
+      for failures during <literal>COPY TO STDOUT/FROM STDIN</> (Tom Lane)
+     </para>
+
+     <para>
+      In particular this fixes an infinite loop that could occur in 9.2 and
+      up if the server connection was lost during <literal>COPY FROM
+      STDIN</>.  Variants of that scenario might be possible in older
+      versions, or with other client applications.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix misaligned descriptors in <application>ecpg</> (MauMau)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In <application>ecpg</>, handle lack of a hostname in the connection
+      parameters properly (Michael Meskes)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix performance regression in <filename>contrib/dblink</> connection
+      startup (Joe Conway)
+     </para>
+
+     <para>
+      Avoid an unnecessary round trip when client and server encodings match.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In <filename>contrib/isn</>, fix incorrect calculation of the check
+      digit for ISMN values (Fabien Coelho)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ensure client-code-only installation procedure works as documented
+      (Peter Eisentraut)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In Mingw and Cygwin builds, install the <application>libpq</> DLL
+      in the <filename>bin</> directory (Andrew Dunstan)
+     </para>
+
+     <para>
+      This duplicates what the MSVC build has long done.  It should fix
+      problems with programs like <application>psql</> failing to start
+      because they can't find the DLL.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Don't generate plain-text <filename>HISTORY</>
+      and <filename>src/test/regress/README</> files anymore (Tom Lane)
+     </para>
+
+     <para>
+      These text files duplicated the main HTML and PDF documentation
+      formats.  The trouble involved in maintaining them greatly outweighs
+      the likely audience for plain-text format.  Distribution tarballs
+      will still contain files by these names, but they'll just be stubs
+      directing the reader to consult the main documentation.
+      The plain-text <filename>INSTALL</> file will still be maintained, as
+      there is arguably a use-case for that.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Update time zone data files to <application>tzdata</> release 2013i
+      for DST law changes in Jordan and historical changes in Cuba.
+     </para>
+
+     <para>
+      In addition, the zones <literal>Asia/Riyadh87</>,
+      <literal>Asia/Riyadh88</>, and <literal>Asia/Riyadh89</> have been
+      removed, as they are no longer maintained by IANA, and never
+      represented actual civil timekeeping practice.
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
  <sect1 id="release-8-4-19">
   <title>Release 8.4.19</title>
 
index aab82fc44e0ea40175ea17bb1cf15193f5139254..8d75f8b16a8a8476c77cdce1c618da408619cefb 100644 (file)
@@ -1,6 +1,368 @@
 <!-- doc/src/sgml/release-9.0.sgml -->
 <!-- See header comment in release.sgml about typical markup -->
 
+ <sect1 id="release-9-0-16">
+  <title>Release 9.0.16</title>
+
+  <note>
+  <title>Release Date</title>
+  <simpara>2014-02-20</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 9.0.15.
+   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.16</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.15,
+    see <xref linkend="release-9-0-15">.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Changes</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Fix possible mis-replay of WAL records when some segments of a
+      relation aren't full size (Greg Stark, Tom Lane)
+     </para>
+
+     <para>
+      The WAL update could be applied to the wrong page, potentially many
+      pages past where it should have been.  Aside from corrupting data,
+      this error has been observed to result in significant <quote>bloat</>
+      of standby servers compared to their masters, due to updates being
+      applied far beyond where the end-of-file should have been.  This
+      failure mode does not appear to be a significant risk during crash
+      recovery, only when initially synchronizing a standby created from a
+      base backup taken from a quickly-changing master.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix bug in determining when recovery has reached consistency
+      (Tomonari Katsumata, Heikki Linnakangas)
+     </para>
+
+     <para>
+      In some cases WAL replay would mistakenly conclude that the database
+      was already consistent at the start of replay, thus possibly allowing
+      hot-standby queries before the database was really consistent.  Other
+      symptoms such as <quote>PANIC: WAL contains references to invalid
+      pages</> were also possible.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix improper locking of btree index pages while replaying
+      a <literal>VACUUM</> operation in hot-standby mode (Andres Freund,
+      Heikki Linnakangas, Tom Lane)
+     </para>
+
+     <para>
+      This error could result in <quote>PANIC: WAL contains references to
+      invalid pages</> failures.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ensure that insertions into non-leaf GIN index pages write a full-page
+      WAL record when appropriate (Heikki Linnakangas)
+     </para>
+
+     <para>
+      The previous coding risked index corruption in the event of a
+      partial-page write during a system crash.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix race conditions during server process exit (Robert Haas)
+     </para>
+
+     <para>
+      Ensure that signal handlers don't attempt to use the
+      process's <varname>MyProc</> pointer after it's no longer valid.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix unsafe references to <varname>errno</> within error reporting
+      logic (Christian Kruse)
+     </para>
+
+     <para>
+      This would typically lead to odd behaviors such as missing or
+      inappropriate <literal>HINT</> fields.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible crashes from using <function>ereport()</> too early
+      during server startup (Tom Lane)
+     </para>
+
+     <para>
+      The principal case we've seen in the field is a crash if the server
+      is started in a directory it doesn't have permission to read.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Clear retry flags properly in OpenSSL socket write
+      function (Alexander Kukushkin)
+     </para>
+
+     <para>
+      This omission could result in a server lockup after unexpected loss
+      of an SSL-encrypted connection.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix length checking for Unicode identifiers (<literal>U&amp;"..."</>
+      syntax) containing escapes (Tom Lane)
+     </para>
+
+     <para>
+      A spurious truncation warning would be printed for such identifiers
+      if the escaped form of the identifier was too long, but the
+      identifier actually didn't need truncation after de-escaping.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow keywords that are type names to be used in lists of roles
+      (Stephen Frost)
+     </para>
+
+     <para>
+      A previous patch allowed such keywords to be used without quoting
+      in places such as role identifiers; but it missed cases where a
+      list of role identifiers was permitted, such as <literal>DROP ROLE</>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible crash due to invalid plan for nested sub-selects, such
+      as <literal>WHERE (... x IN (SELECT ...) ...) IN (SELECT ...)</>
+      (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ensure that <command>ANALYZE</> creates statistics for a table column
+      even when all the values in it are <quote>too wide</> (Tom Lane)
+     </para>
+
+     <para>
+      <command>ANALYZE</> intentionally omits very wide values from its
+      histogram and most-common-values calculations, but it neglected to do
+      something sane in the case that all the sampled entries are too wide.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In <literal>ALTER TABLE ... SET TABLESPACE</>, allow the database's
+      default tablespace to be used without a permissions check
+      (Stephen Frost)
+     </para>
+
+     <para>
+      <literal>CREATE TABLE</> has always allowed such usage,
+      but <literal>ALTER TABLE</> didn't get the memo.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <quote>cannot accept a set</> error when some arms of
+      a <literal>CASE</> return a set and others don't (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix checks for all-zero client addresses in pgstat functions (Kevin
+      Grittner)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible misclassification of multibyte characters by the text
+      search parser (Tom Lane)
+     </para>
+
+     <para>
+      Non-ASCII characters could be misclassified when using C locale with
+      a multibyte encoding.  On Cygwin, non-C locales could fail as well.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible misbehavior in <function>plainto_tsquery()</>
+      (Heikki Linnakangas)
+     </para>
+
+     <para>
+      Use <function>memmove()</> not <function>memcpy()</> for copying
+      overlapping memory regions.  There have been no field reports of
+      this actually causing trouble, but it's certainly risky.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Accept <literal>SHIFT_JIS</> as an encoding name for locale checking
+      purposes (Tatsuo Ishii)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix misbehavior of <function>PQhost()</> on Windows (Fujii Masao)
+     </para>
+
+     <para>
+      It should return <literal>localhost</> if no host has been specified.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Improve error handling in <application>libpq</> and <application>psql</>
+      for failures during <literal>COPY TO STDOUT/FROM STDIN</> (Tom Lane)
+     </para>
+
+     <para>
+      In particular this fixes an infinite loop that could occur in 9.2 and
+      up if the server connection was lost during <literal>COPY FROM
+      STDIN</>.  Variants of that scenario might be possible in older
+      versions, or with other client applications.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix misaligned descriptors in <application>ecpg</> (MauMau)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In <application>ecpg</>, handle lack of a hostname in the connection
+      parameters properly (Michael Meskes)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix performance regression in <filename>contrib/dblink</> connection
+      startup (Joe Conway)
+     </para>
+
+     <para>
+      Avoid an unnecessary round trip when client and server encodings match.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In <filename>contrib/isn</>, fix incorrect calculation of the check
+      digit for ISMN values (Fabien Coelho)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ensure client-code-only installation procedure works as documented
+      (Peter Eisentraut)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In Mingw and Cygwin builds, install the <application>libpq</> DLL
+      in the <filename>bin</> directory (Andrew Dunstan)
+     </para>
+
+     <para>
+      This duplicates what the MSVC build has long done.  It should fix
+      problems with programs like <application>psql</> failing to start
+      because they can't find the DLL.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Avoid using the deprecated <literal>dllwrap</> tool in Cygwin builds
+      (Marco Atzeri)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Don't generate plain-text <filename>HISTORY</>
+      and <filename>src/test/regress/README</> files anymore (Tom Lane)
+     </para>
+
+     <para>
+      These text files duplicated the main HTML and PDF documentation
+      formats.  The trouble involved in maintaining them greatly outweighs
+      the likely audience for plain-text format.  Distribution tarballs
+      will still contain files by these names, but they'll just be stubs
+      directing the reader to consult the main documentation.
+      The plain-text <filename>INSTALL</> file will still be maintained, as
+      there is arguably a use-case for that.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Update time zone data files to <application>tzdata</> release 2013i
+      for DST law changes in Jordan and historical changes in Cuba.
+     </para>
+
+     <para>
+      In addition, the zones <literal>Asia/Riyadh87</>,
+      <literal>Asia/Riyadh88</>, and <literal>Asia/Riyadh89</> have been
+      removed, as they are no longer maintained by IANA, and never
+      represented actual civil timekeeping practice.
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
  <sect1 id="release-9-0-15">
   <title>Release 9.0.15</title>
 
index b94486fd08fe79956e7c02cbe5331b53bce9c081..310e7e28589902c8e894eff8933c54877030dd70 100644 (file)
@@ -1,6 +1,417 @@
 <!-- doc/src/sgml/release-9.1.sgml -->
 <!-- See header comment in release.sgml about typical markup -->
 
+ <sect1 id="release-9-1-12">
+  <title>Release 9.1.12</title>
+
+  <note>
+  <title>Release Date</title>
+  <simpara>2014-02-20</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 9.1.11.
+   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.12</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.11,
+    see <xref linkend="release-9-1-11">.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Changes</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Fix possible mis-replay of WAL records when some segments of a
+      relation aren't full size (Greg Stark, Tom Lane)
+     </para>
+
+     <para>
+      The WAL update could be applied to the wrong page, potentially many
+      pages past where it should have been.  Aside from corrupting data,
+      this error has been observed to result in significant <quote>bloat</>
+      of standby servers compared to their masters, due to updates being
+      applied far beyond where the end-of-file should have been.  This
+      failure mode does not appear to be a significant risk during crash
+      recovery, only when initially synchronizing a standby created from a
+      base backup taken from a quickly-changing master.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix bug in determining when recovery has reached consistency
+      (Tomonari Katsumata, Heikki Linnakangas)
+     </para>
+
+     <para>
+      In some cases WAL replay would mistakenly conclude that the database
+      was already consistent at the start of replay, thus possibly allowing
+      hot-standby queries before the database was really consistent.  Other
+      symptoms such as <quote>PANIC: WAL contains references to invalid
+      pages</> were also possible.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix improper locking of btree index pages while replaying
+      a <literal>VACUUM</> operation in hot-standby mode (Andres Freund,
+      Heikki Linnakangas, Tom Lane)
+     </para>
+
+     <para>
+      This error could result in <quote>PANIC: WAL contains references to
+      invalid pages</> failures.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ensure that insertions into non-leaf GIN index pages write a full-page
+      WAL record when appropriate (Heikki Linnakangas)
+     </para>
+
+     <para>
+      The previous coding risked index corruption in the event of a
+      partial-page write during a system crash.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      When <literal>pause_at_recovery_target</>
+      and <literal>recovery_target_inclusive</> are both set, ensure the
+      target record is applied before pausing, not after (Heikki
+      Linnakangas)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix race conditions during server process exit (Robert Haas)
+     </para>
+
+     <para>
+      Ensure that signal handlers don't attempt to use the
+      process's <varname>MyProc</> pointer after it's no longer valid.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix race conditions in walsender shutdown logic and walreceiver
+      SIGHUP signal handler (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix unsafe references to <varname>errno</> within error reporting
+      logic (Christian Kruse)
+     </para>
+
+     <para>
+      This would typically lead to odd behaviors such as missing or
+      inappropriate <literal>HINT</> fields.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible crashes from using <function>ereport()</> too early
+      during server startup (Tom Lane)
+     </para>
+
+     <para>
+      The principal case we've seen in the field is a crash if the server
+      is started in a directory it doesn't have permission to read.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Clear retry flags properly in OpenSSL socket write
+      function (Alexander Kukushkin)
+     </para>
+
+     <para>
+      This omission could result in a server lockup after unexpected loss
+      of an SSL-encrypted connection.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix length checking for Unicode identifiers (<literal>U&amp;"..."</>
+      syntax) containing escapes (Tom Lane)
+     </para>
+
+     <para>
+      A spurious truncation warning would be printed for such identifiers
+      if the escaped form of the identifier was too long, but the
+      identifier actually didn't need truncation after de-escaping.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow keywords that are type names to be used in lists of roles
+      (Stephen Frost)
+     </para>
+
+     <para>
+      A previous patch allowed such keywords to be used without quoting
+      in places such as role identifiers; but it missed cases where a
+      list of role identifiers was permitted, such as <literal>DROP ROLE</>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix parser crash for <literal>EXISTS(SELECT * FROM
+      zero_column_table)</literal> (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible crash due to invalid plan for nested sub-selects, such
+      as <literal>WHERE (... x IN (SELECT ...) ...) IN (SELECT ...)</>
+      (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ensure that <command>ANALYZE</> creates statistics for a table column
+      even when all the values in it are <quote>too wide</> (Tom Lane)
+     </para>
+
+     <para>
+      <command>ANALYZE</> intentionally omits very wide values from its
+      histogram and most-common-values calculations, but it neglected to do
+      something sane in the case that all the sampled entries are too wide.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In <literal>ALTER TABLE ... SET TABLESPACE</>, allow the database's
+      default tablespace to be used without a permissions check
+      (Stephen Frost)
+     </para>
+
+     <para>
+      <literal>CREATE TABLE</> has always allowed such usage,
+      but <literal>ALTER TABLE</> didn't get the memo.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <quote>cannot accept a set</> error when some arms of
+      a <literal>CASE</> return a set and others don't (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix checks for all-zero client addresses in pgstat functions (Kevin
+      Grittner)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible misclassification of multibyte characters by the text
+      search parser (Tom Lane)
+     </para>
+
+     <para>
+      Non-ASCII characters could be misclassified when using C locale with
+      a multibyte encoding.  On Cygwin, non-C locales could fail as well.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible misbehavior in <function>plainto_tsquery()</>
+      (Heikki Linnakangas)
+     </para>
+
+     <para>
+      Use <function>memmove()</> not <function>memcpy()</> for copying
+      overlapping memory regions.  There have been no field reports of
+      this actually causing trouble, but it's certainly risky.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix placement of permissions checks in <function>pg_start_backup()</>
+      and <function>pg_stop_backup()</> (Andres Freund, Magnus Hagander)
+     </para>
+
+     <para>
+      The previous coding might attempt to do catalog access when it
+      shouldn't.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Accept <literal>SHIFT_JIS</> as an encoding name for locale checking
+      purposes (Tatsuo Ishii)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix misbehavior of <function>PQhost()</> on Windows (Fujii Masao)
+     </para>
+
+     <para>
+      It should return <literal>localhost</> if no host has been specified.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Improve error handling in <application>libpq</> and <application>psql</>
+      for failures during <literal>COPY TO STDOUT/FROM STDIN</> (Tom Lane)
+     </para>
+
+     <para>
+      In particular this fixes an infinite loop that could occur in 9.2 and
+      up if the server connection was lost during <literal>COPY FROM
+      STDIN</>.  Variants of that scenario might be possible in older
+      versions, or with other client applications.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible incorrect printing of filenames
+      in <application>pg_basebackup</>'s verbose mode (Magnus Hagander)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Avoid including tablespaces inside PGDATA twice in base backups
+      (Dimitri Fontaine, Magnus Hagander)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix misaligned descriptors in <application>ecpg</> (MauMau)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In <application>ecpg</>, handle lack of a hostname in the connection
+      parameters properly (Michael Meskes)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix performance regression in <filename>contrib/dblink</> connection
+      startup (Joe Conway)
+     </para>
+
+     <para>
+      Avoid an unnecessary round trip when client and server encodings match.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In <filename>contrib/isn</>, fix incorrect calculation of the check
+      digit for ISMN values (Fabien Coelho)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ensure client-code-only installation procedure works as documented
+      (Peter Eisentraut)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In Mingw and Cygwin builds, install the <application>libpq</> DLL
+      in the <filename>bin</> directory (Andrew Dunstan)
+     </para>
+
+     <para>
+      This duplicates what the MSVC build has long done.  It should fix
+      problems with programs like <application>psql</> failing to start
+      because they can't find the DLL.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Avoid using the deprecated <literal>dllwrap</> tool in Cygwin builds
+      (Marco Atzeri)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Don't generate plain-text <filename>HISTORY</>
+      and <filename>src/test/regress/README</> files anymore (Tom Lane)
+     </para>
+
+     <para>
+      These text files duplicated the main HTML and PDF documentation
+      formats.  The trouble involved in maintaining them greatly outweighs
+      the likely audience for plain-text format.  Distribution tarballs
+      will still contain files by these names, but they'll just be stubs
+      directing the reader to consult the main documentation.
+      The plain-text <filename>INSTALL</> file will still be maintained, as
+      there is arguably a use-case for that.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Update time zone data files to <application>tzdata</> release 2013i
+      for DST law changes in Jordan and historical changes in Cuba.
+     </para>
+
+     <para>
+      In addition, the zones <literal>Asia/Riyadh87</>,
+      <literal>Asia/Riyadh88</>, and <literal>Asia/Riyadh89</> have been
+      removed, as they are no longer maintained by IANA, and never
+      represented actual civil timekeeping practice.
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
  <sect1 id="release-9-1-11">
   <title>Release 9.1.11</title>
 
index 68fcc585bc202eeba9a1fe18b1fd050f864cd9b0..33e2a4e81058d24931ec2c192d615f01d7def51b 100644 (file)
@@ -1,6 +1,477 @@
 <!-- doc/src/sgml/release-9.2.sgml -->
 <!-- See header comment in release.sgml about typical markup -->
 
+ <sect1 id="release-9-2-7">
+  <title>Release 9.2.7</title>
+
+  <note>
+  <title>Release Date</title>
+  <simpara>2014-02-20</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 9.2.6.
+   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.7</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.6,
+    see <xref linkend="release-9-2-6">.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Changes</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Fix possible mis-replay of WAL records when some segments of a
+      relation aren't full size (Greg Stark, Tom Lane)
+     </para>
+
+     <para>
+      The WAL update could be applied to the wrong page, potentially many
+      pages past where it should have been.  Aside from corrupting data,
+      this error has been observed to result in significant <quote>bloat</>
+      of standby servers compared to their masters, due to updates being
+      applied far beyond where the end-of-file should have been.  This
+      failure mode does not appear to be a significant risk during crash
+      recovery, only when initially synchronizing a standby created from a
+      base backup taken from a quickly-changing master.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix bug in determining when recovery has reached consistency
+      (Tomonari Katsumata, Heikki Linnakangas)
+     </para>
+
+     <para>
+      In some cases WAL replay would mistakenly conclude that the database
+      was already consistent at the start of replay, thus possibly allowing
+      hot-standby queries before the database was really consistent.  Other
+      symptoms such as <quote>PANIC: WAL contains references to invalid
+      pages</> were also possible.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix improper locking of btree index pages while replaying
+      a <literal>VACUUM</> operation in hot-standby mode (Andres Freund,
+      Heikki Linnakangas, Tom Lane)
+     </para>
+
+     <para>
+      This error could result in <quote>PANIC: WAL contains references to
+      invalid pages</> failures.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ensure that insertions into non-leaf GIN index pages write a full-page
+      WAL record when appropriate (Heikki Linnakangas)
+     </para>
+
+     <para>
+      The previous coding risked index corruption in the event of a
+      partial-page write during a system crash.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      When <literal>pause_at_recovery_target</>
+      and <literal>recovery_target_inclusive</> are both set, ensure the
+      target record is applied before pausing, not after (Heikki
+      Linnakangas)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix race conditions during server process exit (Robert Haas)
+     </para>
+
+     <para>
+      Ensure that signal handlers don't attempt to use the
+      process's <varname>MyProc</> pointer after it's no longer valid.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix race conditions in walsender shutdown logic and walreceiver
+      SIGHUP signal handler (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix unsafe references to <varname>errno</> within error reporting
+      logic (Christian Kruse)
+     </para>
+
+     <para>
+      This would typically lead to odd behaviors such as missing or
+      inappropriate <literal>HINT</> fields.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible crashes from using <function>ereport()</> too early
+      during server startup (Tom Lane)
+     </para>
+
+     <para>
+      The principal case we've seen in the field is a crash if the server
+      is started in a directory it doesn't have permission to read.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Clear retry flags properly in OpenSSL socket write
+      function (Alexander Kukushkin)
+     </para>
+
+     <para>
+      This omission could result in a server lockup after unexpected loss
+      of an SSL-encrypted connection.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix length checking for Unicode identifiers (<literal>U&amp;"..."</>
+      syntax) containing escapes (Tom Lane)
+     </para>
+
+     <para>
+      A spurious truncation warning would be printed for such identifiers
+      if the escaped form of the identifier was too long, but the
+      identifier actually didn't need truncation after de-escaping.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow keywords that are type names to be used in lists of roles
+      (Stephen Frost)
+     </para>
+
+     <para>
+      A previous patch allowed such keywords to be used without quoting
+      in places such as role identifiers; but it missed cases where a
+      list of role identifiers was permitted, such as <literal>DROP ROLE</>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix parser crash for <literal>EXISTS(SELECT * FROM
+      zero_column_table)</literal> (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible crash due to invalid plan for nested sub-selects, such
+      as <literal>WHERE (... x IN (SELECT ...) ...) IN (SELECT ...)</>
+      (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <literal>UPDATE/DELETE</> of an inherited target table
+      that has <literal>UNION ALL</> subqueries (Tom Lane)
+     </para>
+
+     <para>
+      Without this fix, <literal>UNION ALL</> subqueries aren't correctly
+      inserted into the update plans for inheritance child tables after the
+      first one, typically resulting in no update happening for those child
+      table(s).
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ensure that <command>ANALYZE</> creates statistics for a table column
+      even when all the values in it are <quote>too wide</> (Tom Lane)
+     </para>
+
+     <para>
+      <command>ANALYZE</> intentionally omits very wide values from its
+      histogram and most-common-values calculations, but it neglected to do
+      something sane in the case that all the sampled entries are too wide.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In <literal>ALTER TABLE ... SET TABLESPACE</>, allow the database's
+      default tablespace to be used without a permissions check
+      (Stephen Frost)
+     </para>
+
+     <para>
+      <literal>CREATE TABLE</> has always allowed such usage,
+      but <literal>ALTER TABLE</> didn't get the memo.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <quote>cannot accept a set</> error when some arms of
+      a <literal>CASE</> return a set and others don't (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Properly distinguish numbers from non-numbers when generating JSON
+      output (Andrew Dunstan)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix checks for all-zero client addresses in pgstat functions (Kevin
+      Grittner)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible misclassification of multibyte characters by the text
+      search parser (Tom Lane)
+     </para>
+
+     <para>
+      Non-ASCII characters could be misclassified when using C locale with
+      a multibyte encoding.  On Cygwin, non-C locales could fail as well.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible misbehavior in <function>plainto_tsquery()</>
+      (Heikki Linnakangas)
+     </para>
+
+     <para>
+      Use <function>memmove()</> not <function>memcpy()</> for copying
+      overlapping memory regions.  There have been no field reports of
+      this actually causing trouble, but it's certainly risky.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix placement of permissions checks in <function>pg_start_backup()</>
+      and <function>pg_stop_backup()</> (Andres Freund, Magnus Hagander)
+     </para>
+
+     <para>
+      The previous coding might attempt to do catalog access when it
+      shouldn't.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Accept <literal>SHIFT_JIS</> as an encoding name for locale checking
+      purposes (Tatsuo Ishii)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <literal>*</>-qualification of named parameters in SQL-language
+      functions (Tom Lane)
+     </para>
+
+     <para>
+      Given a composite-type parameter
+      named <literal>foo</>, <literal>$1.*</> worked fine,
+      but <literal>foo.*</> not so much.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix misbehavior of <function>PQhost()</> on Windows (Fujii Masao)
+     </para>
+
+     <para>
+      It should return <literal>localhost</> if no host has been specified.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Improve error handling in <application>libpq</> and <application>psql</>
+      for failures during <literal>COPY TO STDOUT/FROM STDIN</> (Tom Lane)
+     </para>
+
+     <para>
+      In particular this fixes an infinite loop that could occur in 9.2 and
+      up if the server connection was lost during <literal>COPY FROM
+      STDIN</>.  Variants of that scenario might be possible in older
+      versions, or with other client applications.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix incorrect translation handling in
+      some <application>psql</> <literal>\d</> commands
+      (Peter Eisentraut, Tom Lane)
+     </para>
+
+     <para>
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ensure <application>pg_basebackup</>'s background process is killed
+      when exiting its foreground process (Magnus Hagander)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible incorrect printing of filenames
+      in <application>pg_basebackup</>'s verbose mode (Magnus Hagander)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Avoid including tablespaces inside PGDATA twice in base backups
+      (Dimitri Fontaine, Magnus Hagander)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix misaligned descriptors in <application>ecpg</> (MauMau)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In <application>ecpg</>, handle lack of a hostname in the connection
+      parameters properly (Michael Meskes)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix performance regression in <filename>contrib/dblink</> connection
+      startup (Joe Conway)
+     </para>
+
+     <para>
+      Avoid an unnecessary round trip when client and server encodings match.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In <filename>contrib/isn</>, fix incorrect calculation of the check
+      digit for ISMN values (Fabien Coelho)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <filename>contrib/pg_stat_statement</>'s handling
+      of <literal>CURRENT_DATE</> and related constructs (Kyotaro
+      Horiguchi)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ensure client-code-only installation procedure works as documented
+      (Peter Eisentraut)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In Mingw and Cygwin builds, install the <application>libpq</> DLL
+      in the <filename>bin</> directory (Andrew Dunstan)
+     </para>
+
+     <para>
+      This duplicates what the MSVC build has long done.  It should fix
+      problems with programs like <application>psql</> failing to start
+      because they can't find the DLL.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Avoid using the deprecated <literal>dllwrap</> tool in Cygwin builds
+      (Marco Atzeri)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Don't generate plain-text <filename>HISTORY</>
+      and <filename>src/test/regress/README</> files anymore (Tom Lane)
+     </para>
+
+     <para>
+      These text files duplicated the main HTML and PDF documentation
+      formats.  The trouble involved in maintaining them greatly outweighs
+      the likely audience for plain-text format.  Distribution tarballs
+      will still contain files by these names, but they'll just be stubs
+      directing the reader to consult the main documentation.
+      The plain-text <filename>INSTALL</> file will still be maintained, as
+      there is arguably a use-case for that.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Update time zone data files to <application>tzdata</> release 2013i
+      for DST law changes in Jordan and historical changes in Cuba.
+     </para>
+
+     <para>
+      In addition, the zones <literal>Asia/Riyadh87</>,
+      <literal>Asia/Riyadh88</>, and <literal>Asia/Riyadh89</> have been
+      removed, as they are no longer maintained by IANA, and never
+      represented actual civil timekeeping practice.
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
  <sect1 id="release-9-2-6">
   <title>Release 9.2.6</title>
 
index 2f51d677db8a955e030ca27f91cbcf6668b63b36..acc0b9d2024a5bf5a9f0023c683e9ae49217b11e 100644 (file)
 <!-- doc/src/sgml/release-9.3.sgml -->
 <!-- See header comment in release.sgml about typical markup -->
 
+ <sect1 id="release-9-3-3">
+  <title>Release 9.3.3</title>
+
+  <note>
+  <title>Release Date</title>
+  <simpara>2014-02-20</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 9.3.2.
+   For information about new features in the 9.3 major release, see
+   <xref linkend="release-9-3">.
+  </para>
+
+  <sect2>
+   <title>Migration to Version 9.3.3</title>
+
+   <para>
+    A dump/restore is not required for those running 9.3.X.
+   </para>
+
+   <para>
+    However, several of the issues corrected in this release could have
+    resulted in corruption of foreign-key constraints; that is, there
+    might now be referencing rows for which there is no matching row in
+    the referenced table.  It may be worthwhile to recheck such
+    constraints after installing this update.  The simplest way to do that
+    is to drop and recreate each suspect constraint; however, that will
+    require taking an exclusive lock on both tables, so it is unlikely to
+    be acceptable in production databases.  Alternatively, you can do a
+    manual join query between the two tables to look for unmatched rows.
+   </para>
+
+   <para>
+    Note also the requirement for replication standby servers to be
+    upgraded before their master server is upgraded.
+   </para>
+
+   <para>
+    Also, if you are upgrading from a version earlier than 9.3.2,
+    see <xref linkend="release-9-3-2">.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Changes</title>
+
+   <itemizedlist>
+
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+Branch: master [3b97e6823] 2013-12-16 11:29:50 -0300
+Branch: REL9_3_STABLE [8e9a16ab8] 2013-12-16 11:29:51 -0300
+-->
+
+    <listitem>
+     <para>
+      Rework tuple freezing protocol
+      (&Aacute;lvaro Herrera, Andres Freund)
+     </para>
+
+     <para>
+      The method for tuple freezing was unable to handle some cases
+      involving freezing of <quote>multixact</> IDs, with the practical
+      effect that shared row-level locks might be forgotten once old enough.
+     </para>
+
+     <para>
+      Fixing this required changing the WAL record format for tuple
+      freezing.  While this is no issue for standalone servers, when using
+      replication it means that <emphasis>standby servers must be upgraded
+      to 9.3.3 or later before their masters are</>.  An older standby will
+      be unable to interpret freeze records generated by a newer master, and
+      will fail with a PANIC message.  (In such a case, upgrading the
+      standby should be sufficient to let it resume execution.)
+     </para>
+    </listitem>
+
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+Branch: master [801c2dc72] 2014-02-13 19:36:31 -0300
+Branch: REL9_3_STABLE [fb47de2be] 2014-02-13 19:30:30 -0300
+-->
+
+    <listitem>
+     <para>
+      Create separate GUC parameters to control multixact freezing
+      (&Aacute;lvaro Herrera)
+     </para>
+
+     <para>
+      9.3 requires multixact tuple labels to be frozen before
+      they grow too old, in the same fashion as plain transaction ID labels
+      have been frozen for some time.  Previously, the transaction ID
+      freezing parameters were used for multixact IDs too; but since
+      the consumption rates of transaction IDs and multixact IDs can be
+      quite different, this did not work very well.  Introduce new settings
+      <xref linkend="guc-vacuum-multixact-freeze-min-age">,
+      <xref linkend="guc-vacuum-multixact-freeze-table-age">, and
+      <xref linkend="guc-autovacuum-multixact-freeze-max-age">
+      to control when to freeze multixacts.
+     </para>
+    </listitem>
+
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+Branch: master [11ac4c73c] 2013-12-18 13:45:51 -0300
+Branch: REL9_3_STABLE [db1014bc4] 2013-12-18 13:31:27 -0300
+-->
+
+    <listitem>
+     <para>
+      Account for remote row locks propagated by local updates
+      (&Aacute;lvaro Herrera)
+     </para>
+
+     <para>
+      If a row was locked by transaction A, and transaction B updated it,
+      the new version of the row created by B would be locked by A, yet
+      visible only to B.  If transaction B then again updated the row, A's
+      lock wouldn't get checked, thus possibly allowing B to complete when
+      it shouldn't.  This case is new in 9.3 since prior versions did not
+      have any types of row locking that would permit another transaction
+      to update the row at all.
+     </para>
+
+     <para>
+      This oversight could allow referential integrity checks to give false
+      positives (for instance, allow deletes that should have been rejected).
+      Applications using the new commands <literal>SELECT FOR KEY SHARE</>
+      and <literal>SELECT FOR NO KEY UPDATE</> might also have suffered
+      locking failures of this kind.
+     </para>
+    </listitem>
+
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+Branch: master [07aeb1fec] 2013-12-05 12:21:55 -0300
+Branch: REL9_3_STABLE [c6cd27e36] 2013-12-05 12:21:55 -0300
+-->
+
+    <listitem>
+     <para>
+      Prevent <quote>forgetting</> valid row locks when one of several
+      holders of a row lock aborts (&Aacute;lvaro Herrera)
+     </para>
+
+     <para>
+      This was yet another mechanism by which a shared row lock could be
+      lost, thus possibly allowing updates that should have been prevented
+      by foreign-key constraints.
+     </para>
+    </listitem>
+
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+Branch: master [312bde3d4] 2013-12-05 17:47:51 -0300
+Branch: REL9_3_STABLE [2dcc48c35] 2013-12-05 17:47:51 -0300
+-->
+
+    <listitem>
+     <para>
+      Fix incorrect logic during update chain locking
+      (&Aacute;lvaro Herrera)
+     </para>
+
+     <para>
+      This mistake could result in spurious <quote>could not serialize access
+      due to concurrent update</> errors in <literal>REPEATABLE READ</>
+      and <literal>SERIALIZABLE</> transaction isolation modes.
+     </para>
+    </listitem>
+
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+Branch: master [a50d97625] 2014-01-02 18:17:07 -0300
+Branch: REL9_3_STABLE [03db79459] 2014-01-02 18:17:07 -0300
+-->
+
+    <listitem>
+     <para>
+      Handle wraparound correctly during extension or truncation
+      of <filename>pg_multixact/members</>
+      (Andres Freund, &Aacute;lvaro Herrera)
+     </para>
+    </listitem>
+
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+Branch: master [638cf09e7] 2014-01-02 18:17:29 -0300
+Branch: REL9_3_STABLE [948a3dfbb] 2014-01-02 18:17:29 -0300
+-->
+
+    <listitem>
+     <para>
+      Fix handling of 5-digit filenames in <filename>pg_multixact/members</>
+      (&Aacute;lvaro Herrera)
+     </para>
+
+     <para>
+      As of 9.3, these names can be more than 4 digits, but the directory
+      cleanup code ignored such files.
+     </para>
+    </listitem>
+
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+Branch: master [d881dd623] 2013-12-13 17:16:25 -0300
+Branch: REL9_3_STABLE [0bc00363b] 2013-12-13 17:16:25 -0300
+-->
+
+    <listitem>
+     <para>
+      Improve performance of multixact cache code
+      (&Aacute;lvaro Herrera)
+     </para>
+    </listitem>
+
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+Branch: master [13aa62443] 2013-12-19 16:53:49 -0300
+Branch: REL9_3_STABLE [85d3b3c3a] 2013-12-19 16:39:59 -0300
+-->
+
+    <listitem>
+     <para>
+      Optimize updating a row that's already locked by the same transaction
+      (Andres Freund, &Aacute;lvaro Herrera)
+     </para>
+
+     <para>
+      This fixes a performance regression from pre-9.3 versions when doing
+      <literal>SELECT FOR UPDATE</> followed by <literal>UPDATE/DELETE</>.
+     </para>
+    </listitem>
+
+<!--
+Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
+Branch: master [4d894b41c] 2014-02-14 15:15:09 +0200
+Branch: REL9_3_STABLE [762bd379a] 2014-02-14 15:18:34 +0200
+-->
+
+    <listitem>
+     <para>
+      During archive recovery, prefer highest timeline number when WAL
+      segments with the same ID are present in both the archive
+      and <filename>pg_xlog/</> (Kyotaro Horiguchi)
+     </para>
+
+     <para>
+      Previously, not-yet-archived segments could get ignored during
+      recovery.  This reverts an undesirable behavioral change in 9.3.0
+      back to the way things worked pre-9.3.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [6f2aead1f] 2014-02-12 14:52:16 -0500
+Branch: REL9_3_STABLE [7190f7a34] 2014-02-12 14:52:20 -0500
+Branch: REL9_2_STABLE [bc7ab301a] 2014-02-12 14:52:23 -0500
+Branch: REL9_1_STABLE [a69cc9b2c] 2014-02-12 14:52:26 -0500
+Branch: REL9_0_STABLE [7fedd79b7] 2014-02-12 14:52:29 -0500
+Branch: REL8_4_STABLE [9620fede9] 2014-02-12 14:52:32 -0500
+-->
+
+    <listitem>
+     <para>
+      Fix possible mis-replay of WAL records when some segments of a
+      relation aren't full size (Greg Stark, Tom Lane)
+     </para>
+
+     <para>
+      The WAL update could be applied to the wrong page, potentially many
+      pages past where it should have been.  Aside from corrupting data,
+      this error has been observed to result in significant <quote>bloat</>
+      of standby servers compared to their masters, due to updates being
+      applied far beyond where the end-of-file should have been.  This
+      failure mode does not appear to be a significant risk during crash
+      recovery, only when initially synchronizing a standby created from a
+      base backup taken from a quickly-changing master.
+     </para>
+    </listitem>
+
+<!--
+Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
+Branch: master [d59ff6c11] 2014-01-08 15:03:09 +0200
+Branch: REL9_3_STABLE [425bef6ee] 2014-01-08 14:32:22 +0200
+Branch: REL9_2_STABLE [82c75f9dd] 2014-01-08 14:28:55 +0200
+Branch: REL9_1_STABLE [e56430c62] 2014-01-08 14:33:58 +0200
+Branch: REL9_0_STABLE [5301c8395] 2014-01-08 14:34:21 +0200
+-->
+
+    <listitem>
+     <para>
+      Fix bug in determining when recovery has reached consistency
+      (Tomonari Katsumata, Heikki Linnakangas)
+     </para>
+
+     <para>
+      In some cases WAL replay would mistakenly conclude that the database
+      was already consistent at the start of replay, thus possibly allowing
+      hot-standby queries before the database was really consistent.  Other
+      symptoms such as <quote>PANIC: WAL contains references to invalid
+      pages</> were also possible.
+     </para>
+    </listitem>
+
+<!--
+Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
+Branch: master [a49633d8d] 2013-12-13 14:15:04 +0200
+Branch: REL9_3_STABLE [615299cf6] 2013-12-13 14:23:02 +0200
+-->
+
+    <listitem>
+     <para>
+      Fix WAL logging of visibility map changes (Heikki Linnakangas)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [061b079f8] 2014-01-14 17:35:21 -0500
+Branch: REL9_3_STABLE [ebde6c401] 2014-01-14 17:34:51 -0500
+Branch: REL9_2_STABLE [ad2e041a3] 2014-01-14 17:34:54 -0500
+Branch: REL9_1_STABLE [ab4bb5c47] 2014-01-14 17:34:57 -0500
+Branch: REL9_0_STABLE [5d742b9ce] 2014-01-14 17:35:00 -0500
+-->
+
+    <listitem>
+     <para>
+      Fix improper locking of btree index pages while replaying
+      a <literal>VACUUM</> operation in hot-standby mode (Andres Freund,
+      Heikki Linnakangas, Tom Lane)
+     </para>
+
+     <para>
+      This error could result in <quote>PANIC: WAL contains references to
+      invalid pages</> failures.
+     </para>
+    </listitem>
+
+<!--
+Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
+Branch: master [22122c83f] 2013-12-03 23:16:01 +0200
+Branch: REL9_3_STABLE [8fd04cb32] 2013-12-03 22:13:16 +0200
+Branch: REL9_2_STABLE [06df57ac6] 2013-12-03 22:34:31 +0200
+Branch: REL9_1_STABLE [e6acb956a] 2013-12-03 22:34:43 +0200
+Branch: REL9_0_STABLE [760606dc5] 2013-12-03 23:01:31 +0200
+Branch: REL8_4_STABLE [67fc33d3a] 2013-12-03 22:53:26 +0200
+-->
+
+    <listitem>
+     <para>
+      Ensure that insertions into non-leaf GIN index pages write a full-page
+      WAL record when appropriate (Heikki Linnakangas)
+     </para>
+
+     <para>
+      The previous coding risked index corruption in the event of a
+      partial-page write during a system crash.
+     </para>
+    </listitem>
+
+<!--
+Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
+Branch: master [3739e5ab9] 2014-01-08 23:28:52 +0200
+Branch: REL9_3_STABLE [3aefff422] 2014-01-08 23:30:46 +0200
+Branch: REL9_2_STABLE [3bd8987ef] 2014-01-08 23:30:55 +0200
+Branch: REL9_1_STABLE [0402f2441] 2014-01-08 23:31:01 +0200
+-->
+
+    <listitem>
+     <para>
+      When <literal>pause_at_recovery_target</>
+      and <literal>recovery_target_inclusive</> are both set, ensure the
+      target record is applied before pausing, not after (Heikki
+      Linnakangas)
+     </para>
+    </listitem>
+
+<!--
+Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
+Branch: master [a472ae1e4] 2014-01-16 23:15:41 +0200
+Branch: REL9_3_STABLE [e34acac62] 2014-01-16 23:14:57 +0200
+-->
+
+    <listitem>
+     <para>
+      Ensure walreceiver sends hot-standby feedback messages on time even
+      when there is a continuous stream of data (Andres Freund, Amit
+      Kapila)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [e8312b4f0] 2013-12-13 11:50:15 -0500
+Branch: REL9_3_STABLE [478af9b79] 2013-12-13 11:50:25 -0500
+-->
+
+    <listitem>
+     <para>
+      Prevent timeout interrupts from taking control away from mainline
+      code unless <varname>ImmediateInterruptOK</> is set
+      (Andres Freund, Tom Lane)
+     </para>
+
+     <para>
+      This is a serious issue for any application making use of statement
+      timeouts, as it could cause all manner of strange failures after a
+      timeout occurred.  We have seen reports of <quote>stuck</> spinlocks,
+      ERRORs being unexpectedly promoted to PANICs, unkillable backends,
+      and other misbehaviors.
+     </para>
+    </listitem>
+
+<!--
+Author: Robert Haas <rhaas@postgresql.org>
+Branch: master [d1981719a] 2014-01-31 21:31:08 -0500
+Branch: REL9_3_STABLE [5d807a74b] 2014-01-31 21:34:44 -0500
+Branch: REL9_2_STABLE [ebe334463] 2014-01-31 21:35:32 -0500
+Branch: REL9_1_STABLE [8e6bfc9eb] 2014-01-31 21:36:23 -0500
+Branch: REL9_0_STABLE [798243a81] 2014-01-31 21:40:20 -0500
+Branch: REL8_4_STABLE [458b20f2d] 2014-01-31 21:41:09 -0500
+-->
+
+    <listitem>
+     <para>
+      Fix race conditions during server process exit (Robert Haas)
+     </para>
+
+     <para>
+      Ensure that signal handlers don't attempt to use the
+      process's <varname>MyProc</> pointer after it's no longer valid.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [214c7a4f0] 2014-02-01 16:21:23 -0500
+Branch: REL9_3_STABLE [6f1a40773] 2014-02-01 16:21:30 -0500
+Branch: REL9_2_STABLE [81b116d98] 2014-02-01 16:21:33 -0500
+Branch: REL9_1_STABLE [03f06ff38] 2014-02-01 16:21:38 -0500
+-->
+
+    <listitem>
+     <para>
+      Fix race conditions in walsender shutdown logic and walreceiver
+      SIGHUP signal handler (Tom Lane)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [571addd72] 2014-01-29 20:04:43 -0500
+Branch: REL9_3_STABLE [bf8ee6f15] 2014-01-29 20:04:01 -0500
+Branch: REL9_2_STABLE [3e71ce1e9] 2014-01-29 20:04:05 -0500
+Branch: REL9_1_STABLE [af259c691] 2014-01-29 20:04:08 -0500
+Branch: REL9_0_STABLE [d17a667e8] 2014-01-29 20:04:11 -0500
+Branch: REL8_4_STABLE [01b882fd8] 2014-01-29 20:04:14 -0500
+-->
+
+    <listitem>
+     <para>
+      Fix unsafe references to <varname>errno</> within error reporting
+      logic (Christian Kruse)
+     </para>
+
+     <para>
+      This would typically lead to odd behaviors such as missing or
+      inappropriate <literal>HINT</> fields.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [910bac595] 2014-01-11 16:36:07 -0500
+Branch: REL9_3_STABLE [5bfcc9ec5] 2014-01-11 16:35:30 -0500
+Branch: REL9_2_STABLE [2de905186] 2014-01-11 16:35:34 -0500
+Branch: REL9_1_STABLE [3f721588a] 2014-01-11 16:35:37 -0500
+Branch: REL9_0_STABLE [d9c4442b8] 2014-01-11 16:35:41 -0500
+Branch: REL8_4_STABLE [d0070ac81] 2014-01-11 16:35:44 -0500
+-->
+
+    <listitem>
+     <para>
+      Fix possible crashes from using <function>ereport()</> too early
+      during server startup (Tom Lane)
+     </para>
+
+     <para>
+      The principal case we've seen in the field is a crash if the server
+      is started in a directory it doesn't have permission to read.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [74242c23c] 2013-12-05 12:48:28 -0500
+Branch: REL9_3_STABLE [2a6e1a554] 2013-12-05 12:48:31 -0500
+Branch: REL9_2_STABLE [41042970b] 2013-12-05 12:48:35 -0500
+Branch: REL9_1_STABLE [ad910ccdc] 2013-12-05 12:48:37 -0500
+Branch: REL9_0_STABLE [36352ceb4] 2013-12-05 12:48:41 -0500
+Branch: REL8_4_STABLE [7635dae55] 2013-12-05 12:48:44 -0500
+-->
+
+    <listitem>
+     <para>
+      Clear retry flags properly in OpenSSL socket write
+      function (Alexander Kukushkin)
+     </para>
+
+     <para>
+      This omission could result in a server lockup after unexpected loss
+      of an SSL-encrypted connection.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [44c216330] 2014-02-13 14:24:42 -0500
+Branch: REL9_3_STABLE [ca1c17181] 2014-02-13 14:24:45 -0500
+Branch: REL9_2_STABLE [8439ee415] 2014-02-13 14:24:49 -0500
+Branch: REL9_1_STABLE [170590261] 2014-02-13 14:24:52 -0500
+Branch: REL9_0_STABLE [148052d25] 2014-02-13 14:24:55 -0500
+Branch: REL8_4_STABLE [a8a46d846] 2014-02-13 14:24:58 -0500
+-->
+
+    <listitem>
+     <para>
+      Fix length checking for Unicode identifiers (<literal>U&amp;"..."</>
+      syntax) containing escapes (Tom Lane)
+     </para>
+
+     <para>
+      A spurious truncation warning would be printed for such identifiers
+      if the escaped form of the identifier was too long, but the
+      identifier actually didn't need truncation after de-escaping.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [0c2338abb] 2014-02-03 19:47:57 -0500
+Branch: REL9_3_STABLE [4c70cb1d3] 2014-02-03 19:48:00 -0500
+-->
+
+    <listitem>
+     <para>
+      Fix parsing of Unicode literals and identifiers just before the end
+      of a command string or function body (Tom Lane)
+     </para>
+    </listitem>
+
+<!--
+Author: Stephen Frost <sfrost@snowman.net>
+Branch: master [6c36f383d] 2014-01-21 22:49:22 -0500
+Branch: REL9_3_STABLE [d1e3070f0] 2014-01-21 22:56:30 -0500
+Branch: REL9_2_STABLE [c0e6169e1] 2014-01-21 22:56:34 -0500
+Branch: REL9_1_STABLE [cbd850bf6] 2014-01-21 23:00:58 -0500
+Branch: REL9_0_STABLE [f2eede9b5] 2014-01-21 23:01:40 -0500
+-->
+
+    <listitem>
+     <para>
+      Allow keywords that are type names to be used in lists of roles
+      (Stephen Frost)
+     </para>
+
+     <para>
+      A previous patch allowed such keywords to be used without quoting
+      in places such as role identifiers; but it missed cases where a
+      list of role identifiers was permitted, such as <literal>DROP ROLE</>.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [7ab321404] 2013-12-02 20:28:45 -0500
+Branch: REL9_3_STABLE [b44ae4893] 2013-12-02 20:28:49 -0500
+Branch: REL9_2_STABLE [6698782f1] 2013-12-02 20:28:53 -0500
+Branch: REL9_1_STABLE [f67b8aeab] 2013-12-02 20:28:56 -0500
+-->
+
+    <listitem>
+     <para>
+      Fix parser crash for <literal>EXISTS(SELECT * FROM
+      zero_column_table)</literal> (Tom Lane)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [9ec6199d1] 2013-12-10 16:10:17 -0500
+Branch: REL9_3_STABLE [9d2e07fec] 2013-12-10 16:10:20 -0500
+Branch: REL9_2_STABLE [f5d9fdcc7] 2013-12-10 16:10:24 -0500
+Branch: REL9_1_STABLE [48e5cfde8] 2013-12-10 16:10:28 -0500
+Branch: REL9_0_STABLE [41e9990cd] 2013-12-10 16:10:31 -0500
+Branch: REL8_4_STABLE [884c6384a] 2013-12-10 16:10:36 -0500
+-->
+
+    <listitem>
+     <para>
+      Fix possible crash due to invalid plan for nested sub-selects, such
+      as <literal>WHERE (... x IN (SELECT ...) ...) IN (SELECT ...)</>
+      (Tom Lane)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [043f6ff05] 2014-01-30 14:51:16 -0500
+Branch: REL9_3_STABLE [a4aa854ca] 2014-01-30 14:51:19 -0500
+-->
+
+    <listitem>
+     <para>
+      Fix mishandling of <literal>WHERE</> conditions pulled up from
+      a <literal>LATERAL</> subquery (Tom Lane)
+     </para>
+
+     <para>
+      The typical symptom of this bug was a <quote>JOIN qualification
+      cannot refer to other relations</> error, though subtle logic
+      errors in created plans seem possible as well.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [158b7fa6a] 2014-01-11 19:03:12 -0500
+Branch: REL9_3_STABLE [27ff4cfe7] 2014-01-11 19:03:15 -0500
+-->
+
+    <listitem>
+     <para>
+      Disallow <literal>LATERAL</> references to the target table of
+      an <literal>UPDATE/DELETE</> (Tom Lane)
+     </para>
+
+     <para>
+      While this might be allowed in some future release, it was
+      unintentional in 9.3, and didn't work quite right anyway.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [c03ad5602] 2013-12-14 17:33:53 -0500
+Branch: REL9_3_STABLE [324577f39] 2013-12-14 17:33:56 -0500
+Branch: REL9_2_STABLE [5d545b7ed] 2013-12-14 17:34:00 -0500
+-->
+
+    <listitem>
+     <para>
+      Fix <literal>UPDATE/DELETE</> of an inherited target table
+      that has <literal>UNION ALL</> subqueries (Tom Lane)
+     </para>
+
+     <para>
+      Without this fix, <literal>UNION ALL</> subqueries aren't correctly
+      inserted into the update plans for inheritance child tables after the
+      first one, typically resulting in no update happening for those child
+      table(s).
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [4eeda92d8] 2013-12-23 22:18:48 -0500
+Branch: REL9_3_STABLE [663f8419b] 2013-12-23 22:18:23 -0500
+-->
+
+    <listitem>
+     <para>
+      Fix <command>ANALYZE</> to not fail on a column that's a domain over
+      a range type (Tom Lane)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [628652620] 2014-01-11 13:42:42 -0500
+Branch: REL9_3_STABLE [36785a21b] 2014-01-11 13:41:51 -0500
+Branch: REL9_2_STABLE [f0381680f] 2014-01-11 13:41:56 -0500
+Branch: REL9_1_STABLE [9387f4e1b] 2014-01-11 13:42:00 -0500
+Branch: REL9_0_STABLE [2d76d75d9] 2014-01-11 13:42:05 -0500
+Branch: REL8_4_STABLE [00b77771a] 2014-01-11 13:42:11 -0500
+-->
+
+    <listitem>
+     <para>
+      Ensure that <command>ANALYZE</> creates statistics for a table column
+      even when all the values in it are <quote>too wide</> (Tom Lane)
+     </para>
+
+     <para>
+      <command>ANALYZE</> intentionally omits very wide values from its
+      histogram and most-common-values calculations, but it neglected to do
+      something sane in the case that all the sampled entries are too wide.
+     </para>
+    </listitem>
+
+<!--
+Author: Stephen Frost <sfrost@snowman.net>
+Branch: master [6f25c62d7] 2014-01-18 18:41:52 -0500
+Branch: REL9_3_STABLE [86e58ae02] 2014-01-18 18:49:08 -0500
+Branch: REL9_2_STABLE [1fe06595a] 2014-01-18 18:49:41 -0500
+Branch: REL9_1_STABLE [d2636486b] 2014-01-18 18:50:09 -0500
+Branch: REL9_0_STABLE [e70c42821] 2014-01-18 18:50:29 -0500
+Branch: REL8_4_STABLE [0fb4e3ceb] 2014-01-18 18:50:47 -0500
+-->
+
+    <listitem>
+     <para>
+      In <literal>ALTER TABLE ... SET TABLESPACE</>, allow the database's
+      default tablespace to be used without a permissions check
+      (Stephen Frost)
+     </para>
+
+     <para>
+      <literal>CREATE TABLE</> has always allowed such usage,
+      but <literal>ALTER TABLE</> didn't get the memo.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [c01bc51f8] 2013-12-30 14:00:02 -0500
+Branch: REL9_3_STABLE [9a6e2b150] 2013-12-30 14:00:05 -0500
+-->
+
+    <listitem>
+     <para>
+      Fix support for extensions containing event triggers (Tom Lane)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [080b7db72] 2014-01-08 20:18:58 -0500
+Branch: REL9_3_STABLE [47ac4473a] 2014-01-08 20:18:10 -0500
+Branch: REL9_2_STABLE [97a39f295] 2014-01-08 20:18:13 -0500
+Branch: REL9_1_STABLE [6c6c53d0b] 2014-01-08 20:18:17 -0500
+Branch: REL9_0_STABLE [6ca712fb9] 2014-01-08 20:18:20 -0500
+Branch: REL8_4_STABLE [57ac7d8a7] 2014-01-08 20:18:24 -0500
+-->
+
+    <listitem>
+     <para>
+      Fix <quote>cannot accept a set</> error when some arms of
+      a <literal>CASE</> return a set and others don't (Tom Lane)
+     </para>
+    </listitem>
+
+<!--
+Author: Andrew Dunstan <andrew@dunslane.net>
+Branch: master [d3ee45152] 2014-02-03 10:40:12 -0500
+Branch: REL9_3_STABLE [cdfbb78f0] 2014-02-03 10:39:13 -0500
+-->
+
+    <listitem>
+     <para>
+      Fix memory leakage in JSON functions (Craig Ringer)
+     </para>
+    </listitem>
+
+<!--
+Author: Andrew Dunstan <andrew@dunslane.net>
+Branch: master [29dcf7ded] 2013-12-27 17:04:00 -0500
+Branch: REL9_3_STABLE [7dfd9f6f5] 2013-12-27 17:21:04 -0500
+Branch: REL9_2_STABLE [4825a9e95] 2013-12-27 17:21:27 -0500
+-->
+
+    <listitem>
+     <para>
+      Properly distinguish numbers from non-numbers when generating JSON
+      output (Andrew Dunstan)
+     </para>
+    </listitem>
+
+<!--
+Author: Kevin Grittner <kgrittn@postgresql.org>
+Branch: master [a133bf703] 2013-12-27 15:26:24 -0600
+Branch: REL9_3_STABLE [28b60aa23] 2013-12-27 15:40:51 -0600
+Branch: REL9_2_STABLE [150a30e19] 2013-12-27 15:41:02 -0600
+Branch: REL9_1_STABLE [1f069d21d] 2013-12-27 15:41:18 -0600
+Branch: REL9_0_STABLE [918d74a07] 2013-12-27 15:41:32 -0600
+Branch: REL8_4_STABLE [b2d80147d] 2013-12-27 15:41:46 -0600
+-->
+
+    <listitem>
+     <para>
+      Fix checks for all-zero client addresses in pgstat functions (Kevin
+      Grittner)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [082c0dfa1] 2014-02-01 18:27:34 -0500
+Branch: REL9_3_STABLE [9beffdcc3] 2014-02-01 18:27:40 -0500
+Branch: REL9_2_STABLE [8be095cea] 2014-02-01 18:27:44 -0500
+Branch: REL9_1_STABLE [399d23e19] 2014-02-01 18:27:48 -0500
+Branch: REL9_0_STABLE [3c7b4ef70] 2014-02-01 18:27:54 -0500
+Branch: REL8_4_STABLE [56f5d3424] 2014-02-01 18:27:12 -0500
+-->
+
+    <listitem>
+     <para>
+      Fix possible misclassification of multibyte characters by the text
+      search parser (Tom Lane)
+     </para>
+
+     <para>
+      Non-ASCII characters could be misclassified when using C locale with
+      a multibyte encoding.  On Cygwin, non-C locales could fail as well.
+     </para>
+    </listitem>
+
+<!--
+Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
+Branch: master [6c2744f1d] 2014-02-10 09:57:59 +0200
+Branch: REL9_3_STABLE [928aec71c] 2014-02-10 09:59:49 +0200
+Branch: REL9_2_STABLE [f3807106b] 2014-02-10 10:00:04 +0200
+Branch: REL9_1_STABLE [5f778e644] 2014-02-10 10:00:23 +0200
+Branch: REL9_0_STABLE [fe8a6f53e] 2014-02-10 10:00:36 +0200
+Branch: REL8_4_STABLE [6141983fb] 2014-02-10 10:00:50 +0200
+-->
+
+    <listitem>
+     <para>
+      Fix possible misbehavior in <function>plainto_tsquery()</>
+      (Heikki Linnakangas)
+     </para>
+
+     <para>
+      Use <function>memmove()</> not <function>memcpy()</> for copying
+      overlapping memory regions.  There have been no field reports of
+      this actually causing trouble, but it's certainly risky.
+     </para>
+    </listitem>
+
+<!--
+Author: Magnus Hagander <magnus@hagander.net>
+Branch: master [9544cc0d6] 2014-01-07 17:50:56 +0100
+Branch: REL9_3_STABLE [91c2755fc] 2014-01-07 17:51:02 +0100
+Branch: REL9_2_STABLE [61d4d14ee] 2014-01-07 17:53:00 +0100
+Branch: REL9_1_STABLE [026a91f86] 2014-01-07 18:00:36 +0100
+-->
+
+    <listitem>
+     <para>
+      Fix placement of permissions checks in <function>pg_start_backup()</>
+      and <function>pg_stop_backup()</> (Andres Freund, Magnus Hagander)
+     </para>
+
+     <para>
+      The previous coding might attempt to do catalog access when it
+      shouldn't.
+     </para>
+    </listitem>
+
+<!--
+Author: Tatsuo Ishii <ishii@postgresql.org>
+Branch: master [1f0626ee4] 2013-12-15 11:09:05 +0900
+Branch: REL9_3_STABLE [8122e6f85] 2013-12-15 11:10:41 +0900
+Branch: REL9_2_STABLE [0c07ef1ad] 2013-12-15 11:10:49 +0900
+Branch: REL9_1_STABLE [035226c61] 2013-12-15 11:10:56 +0900
+Branch: REL9_0_STABLE [7016d970d] 2013-12-15 11:11:02 +0900
+Branch: REL8_4_STABLE [69f77d756] 2013-12-15 11:11:11 +0900
+-->
+
+    <listitem>
+     <para>
+      Accept <literal>SHIFT_JIS</> as an encoding name for locale checking
+      purposes (Tatsuo Ishii)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [0def2573c] 2014-02-03 14:47:17 -0500
+Branch: REL9_3_STABLE [641c08041] 2014-02-03 14:46:54 -0500
+Branch: REL9_2_STABLE [888b56570] 2014-02-03 14:46:57 -0500
+-->
+
+    <listitem>
+     <para>
+      Fix <literal>*</>-qualification of named parameters in SQL-language
+      functions (Tom Lane)
+     </para>
+
+     <para>
+      Given a composite-type parameter
+      named <literal>foo</>, <literal>$1.*</> worked fine,
+      but <literal>foo.*</> not so much.
+     </para>
+    </listitem>
+
+<!--
+Author: Fujii Masao <fujii@postgresql.org>
+Branch: master [77035fa8a] 2014-01-23 22:58:58 +0900
+Branch: REL9_3_STABLE [be5d49974] 2014-01-23 23:00:30 +0900
+Branch: REL9_2_STABLE [ea311bfdf] 2014-01-23 23:01:06 +0900
+Branch: REL9_1_STABLE [1b384aff1] 2014-01-23 23:01:34 +0900
+Branch: REL9_0_STABLE [996b21cbf] 2014-01-23 23:02:03 +0900
+Branch: REL8_4_STABLE [5525529db] 2014-01-23 23:02:30 +0900
+-->
+
+    <listitem>
+     <para>
+      Fix misbehavior of <function>PQhost()</> on Windows (Fujii Masao)
+     </para>
+
+     <para>
+      It should return <literal>localhost</> if no host has been specified.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [b8f00a46b] 2014-02-13 18:45:58 -0500
+Branch: REL9_3_STABLE [f208fb436] 2014-02-13 18:46:03 -0500
+Branch: REL9_2_STABLE [2573f08a1] 2014-02-13 18:45:20 -0500
+Branch: REL9_1_STABLE [7182bd239] 2014-02-13 18:45:23 -0500
+Branch: REL9_0_STABLE [218dd205b] 2014-02-13 18:45:27 -0500
+Branch: REL8_4_STABLE [7644a7bd8] 2014-02-13 18:45:32 -0500
+-->
+
+    <listitem>
+     <para>
+      Improve error handling in <application>libpq</> and <application>psql</>
+      for failures during <literal>COPY TO STDOUT/FROM STDIN</> (Tom Lane)
+     </para>
+
+     <para>
+      In particular this fixes an infinite loop that could occur in 9.2 and
+      up if the server connection was lost during <literal>COPY FROM
+      STDIN</>.  Variants of that scenario might be possible in older
+      versions, or with other client applications.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [92459e7a7] 2014-01-04 16:05:16 -0500
+Branch: REL9_3_STABLE [341f0bc49] 2014-01-04 16:05:20 -0500
+Branch: REL9_2_STABLE [fa28f9cba] 2014-01-04 16:05:23 -0500
+-->
+
+    <listitem>
+     <para>
+      Fix incorrect translation handling in
+      some <application>psql</> <literal>\d</> commands
+      (Peter Eisentraut, Tom Lane)
+     </para>
+
+     <para>
+     </para>
+    </listitem>
+
+<!--
+Author: Magnus Hagander <magnus@hagander.net>
+Branch: master [63ab2befe] 2014-02-12 18:45:18 +0100
+Branch: REL9_3_STABLE [c90204c60] 2014-02-12 18:46:04 +0100
+Branch: REL9_2_STABLE [0ae288d2d] 2014-02-12 14:51:00 +0100
+-->
+
+    <listitem>
+     <para>
+      Ensure <application>pg_basebackup</>'s background process is killed
+      when exiting its foreground process (Magnus Hagander)
+     </para>
+    </listitem>
+
+<!--
+Author: Magnus Hagander <magnus@hagander.net>
+Branch: master [01025d80a] 2014-02-09 12:05:14 +0100
+Branch: REL9_3_STABLE [680baa8d2] 2014-02-09 12:09:18 +0100
+Branch: REL9_2_STABLE [165aa1da5] 2014-02-09 12:09:39 +0100
+Branch: REL9_1_STABLE [c6e5c4dd1] 2014-02-09 12:09:55 +0100
+-->
+
+    <listitem>
+     <para>
+      Fix possible incorrect printing of filenames
+      in <application>pg_basebackup</>'s verbose mode (Magnus Hagander)
+     </para>
+    </listitem>
+
+<!--
+Author: Magnus Hagander <magnus@hagander.net>
+Branch: master [b168c5ef2] 2014-01-07 17:11:32 +0100
+Branch: REL9_3_STABLE [0463b9419] 2014-01-07 17:11:51 +0100
+Branch: REL9_2_STABLE [2edf3e82c] 2014-01-07 17:22:36 +0100
+Branch: REL9_1_STABLE [773e4d5e4] 2014-01-07 17:18:02 +0100
+-->
+
+    <listitem>
+     <para>
+      Avoid including tablespaces inside PGDATA twice in base backups
+      (Dimitri Fontaine, Magnus Hagander)
+     </para>
+    </listitem>
+
+<!--
+Author: Michael Meskes <meskes@postgresql.org>
+Branch: master [d685e2424] 2014-01-09 16:20:19 +0100
+Branch: REL9_3_STABLE [28fff0ef8] 2014-01-09 15:41:51 +0100
+Branch: REL9_2_STABLE [799728b0b] 2014-01-09 15:50:51 +0100
+Branch: REL9_1_STABLE [9f5b3a1a1] 2014-01-09 15:51:11 +0100
+Branch: REL9_0_STABLE [a29b6c342] 2014-01-09 15:51:23 +0100
+Branch: REL8_4_STABLE [d68a65b01] 2014-01-09 15:58:37 +0100
+-->
+
+    <listitem>
+     <para>
+      Fix misaligned descriptors in <application>ecpg</> (MauMau)
+     </para>
+    </listitem>
+
+<!--
+Author: Michael Meskes <meskes@postgresql.org>
+Branch: master [7c957ec83] 2014-01-01 12:39:31 +0100
+Branch: REL9_3_STABLE [8404037d8] 2014-01-01 12:40:28 +0100
+Branch: REL9_2_STABLE [119a59879] 2014-01-01 12:40:42 +0100
+Branch: REL9_1_STABLE [948498274] 2014-01-01 12:44:15 +0100
+Branch: REL9_0_STABLE [17bcdd01f] 2014-01-01 12:44:44 +0100
+Branch: REL8_4_STABLE [96de4939c] 2014-01-01 12:44:58 +0100
+-->
+
+    <listitem>
+     <para>
+      In <application>ecpg</>, handle lack of a hostname in the connection
+      parameters properly (Michael Meskes)
+     </para>
+    </listitem>
+
+<!--
+Author: Joe Conway <mail@joeconway.com>
+Branch: master [d6ca510d9] 2013-12-07 17:00:26 -0800
+Branch: REL9_3_STABLE [0ec530625] 2013-12-07 17:00:10 -0800
+Branch: REL9_2_STABLE [7f4ef622f] 2013-12-07 16:59:35 -0800
+Branch: REL9_1_STABLE [70165f25b] 2013-12-07 16:59:16 -0800
+Branch: REL9_0_STABLE [9057adc23] 2013-12-07 16:58:41 -0800
+Branch: REL8_4_STABLE [6c8b16e30] 2013-12-07 16:56:34 -0800
+-->
+
+    <listitem>
+     <para>
+      Fix performance regression in <filename>contrib/dblink</> connection
+      startup (Joe Conway)
+     </para>
+
+     <para>
+      Avoid an unnecessary round trip when client and server encodings match.
+     </para>
+    </listitem>
+
+<!--
+Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
+Branch: master [866a1f092] 2014-01-13 15:43:29 +0200
+Branch: REL9_3_STABLE [50c5770ec] 2014-01-13 15:43:59 +0200
+Branch: REL9_2_STABLE [f6d6b42f2] 2014-01-13 15:44:02 +0200
+Branch: REL9_1_STABLE [5143dfd57] 2014-01-13 15:44:04 +0200
+Branch: REL9_0_STABLE [6c3f040be] 2014-01-13 15:44:12 +0200
+Branch: REL8_4_STABLE [492b68541] 2014-01-13 15:44:14 +0200
+-->
+
+    <listitem>
+     <para>
+      In <filename>contrib/isn</>, fix incorrect calculation of the check
+      digit for ISMN values (Fabien Coelho)
+     </para>
+    </listitem>
+
+<!--
+Author: Tatsuo Ishii <ishii@postgresql.org>
+Branch: master [841a65482] 2013-12-12 19:10:35 +0900
+Branch: REL9_3_STABLE [27902bc91] 2013-12-12 19:07:53 +0900
+-->
+
+    <listitem>
+     <para>
+      Fix <filename>contrib/pgbench</>'s progress logging to avoid overflow
+      when the scale factor is large (Tatsuo Ishii)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [69c7a9838] 2014-01-21 16:34:28 -0500
+Branch: REL9_3_STABLE [0950d67ee] 2014-01-21 16:34:31 -0500
+Branch: REL9_2_STABLE [27ab1eb7e] 2014-01-21 16:34:35 -0500
+-->
+
+    <listitem>
+     <para>
+      Fix <filename>contrib/pg_stat_statement</>'s handling
+      of <literal>CURRENT_DATE</> and related constructs (Kyotaro
+      Horiguchi)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [00d4f2af8] 2014-02-03 21:30:20 -0500
+Branch: REL9_3_STABLE [eb3d350db] 2014-02-03 21:30:28 -0500
+-->
+
+    <listitem>
+     <para>
+      Improve lost-connection error handling
+      in <filename>contrib/postgres_fdw</> (Tom Lane)
+     </para>
+    </listitem>
+
+<!--
+Author: Peter Eisentraut <peter_e@gmx.net>
+Branch: master [ad6bf0291] 2014-01-17 23:08:22 -0500
+Branch: REL9_3_STABLE [586bea612] 2014-01-17 23:11:02 -0500
+Branch: REL9_2_STABLE [526e38751] 2014-01-17 23:12:50 -0500
+Branch: REL9_1_STABLE [6d969b000] 2014-01-17 23:14:21 -0500
+Branch: REL9_0_STABLE [2346c383a] 2014-01-17 23:15:00 -0500
+Branch: REL8_4_STABLE [15699d9bf] 2014-01-17 23:17:59 -0500
+-->
+
+    <listitem>
+     <para>
+      Ensure client-code-only installation procedure works as documented
+      (Peter Eisentraut)
+     </para>
+    </listitem>
+
+<!--
+Author: Andrew Dunstan <andrew@dunslane.net>
+Branch: master [d587298b8] 2014-02-01 15:11:13 -0500
+Branch: REL9_3_STABLE [1e9876c3b] 2014-02-01 15:16:06 -0500
+Branch: REL9_2_STABLE [6e96d4db8] 2014-02-01 15:16:18 -0500
+Branch: REL9_1_STABLE [dfb4a1a21] 2014-02-01 15:16:29 -0500
+Branch: REL9_0_STABLE [59d64e7f3] 2014-02-01 15:16:40 -0500
+Branch: REL8_4_STABLE [ae3c98b9b] 2014-02-01 15:16:52 -0500
+-->
+
+    <listitem>
+     <para>
+      In Mingw and Cygwin builds, install the <application>libpq</> DLL
+      in the <filename>bin</> directory (Andrew Dunstan)
+     </para>
+
+     <para>
+      This duplicates what the MSVC build has long done.  It should fix
+      problems with programs like <application>psql</> failing to start
+      because they can't find the DLL.
+     </para>
+    </listitem>
+
+<!--
+Author: Andrew Dunstan <andrew@dunslane.net>
+Branch: master [7e1531a45] 2014-02-01 16:08:33 -0500
+Branch: REL9_3_STABLE [27942baf4] 2014-02-01 16:13:32 -0500
+Branch: REL9_2_STABLE [fad443753] 2014-02-01 16:13:46 -0500
+Branch: REL9_1_STABLE [e5c22c15d] 2014-02-01 16:14:01 -0500
+Branch: REL9_0_STABLE [1c0bf372f] 2014-02-01 16:14:15 -0500
+-->
+
+    <listitem>
+     <para>
+      Avoid using the deprecated <literal>dllwrap</> tool in Cygwin builds
+      (Marco Atzeri)
+     </para>
+    </listitem>
+
+<!--
+Author: Andrew Dunstan <andrew@dunslane.net>
+Branch: master [cec8394b5] 2014-01-26 09:49:10 -0500
+Branch: REL9_3_STABLE [56c08df55] 2014-01-26 09:45:43 -0500
+-->
+
+    <listitem>
+     <para>
+      Enable building with Visual Studio 2013 (Brar Piening)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [289541520] 2014-02-10 20:48:04 -0500
+Branch: REL9_3_STABLE [f1e522696] 2014-02-10 20:48:12 -0500
+Branch: REL9_2_STABLE [dd5605104] 2014-02-10 20:48:20 -0500
+Branch: REL9_1_STABLE [3bf5c16f1] 2014-02-10 20:48:23 -0500
+Branch: REL9_0_STABLE [e1e7642bd] 2014-02-10 20:48:27 -0500
+Branch: REL8_4_STABLE [432735cbf] 2014-02-10 20:48:30 -0500
+-->
+
+    <listitem>
+     <para>
+      Don't generate plain-text <filename>HISTORY</>
+      and <filename>src/test/regress/README</> files anymore (Tom Lane)
+     </para>
+
+     <para>
+      These text files duplicated the main HTML and PDF documentation
+      formats.  The trouble involved in maintaining them greatly outweighs
+      the likely audience for plain-text format.  Distribution tarballs
+      will still contain files by these names, but they'll just be stubs
+      directing the reader to consult the main documentation.
+      The plain-text <filename>INSTALL</> file will still be maintained, as
+      there is arguably a use-case for that.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [e04641f4b] 2014-02-14 21:59:13 -0500
+Branch: REL9_3_STABLE [46cbcd50e] 2014-02-14 21:59:37 -0500
+Branch: REL9_2_STABLE [4f975b68b] 2014-02-14 21:59:42 -0500
+Branch: REL9_1_STABLE [3212ba534] 2014-02-14 21:59:46 -0500
+Branch: REL9_0_STABLE [cb84fddd9] 2014-02-14 21:59:50 -0500
+Branch: REL8_4_STABLE [c0c2d62ac] 2014-02-14 21:59:56 -0500
+-->
+
+    <listitem>
+     <para>
+      Update time zone data files to <application>tzdata</> release 2013i
+      for DST law changes in Jordan and historical changes in Cuba.
+     </para>
+
+     <para>
+      In addition, the zones <literal>Asia/Riyadh87</>,
+      <literal>Asia/Riyadh88</>, and <literal>Asia/Riyadh89</> have been
+      removed, as they are no longer maintained by IANA, and never
+      represented actual civil timekeeping practice.
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
  <sect1 id="release-9-3-2">
   <title>Release 9.3.2</title>