]> granicus.if.org Git - postgresql/commitdiff
Release notes for 9.3.5, 9.2.9, 9.1.14, 9.0.18, 8.4.22.
authorTom Lane <tgl@sss.pgh.pa.us>
Mon, 21 Jul 2014 18:59:25 +0000 (14:59 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Mon, 21 Jul 2014 18:59:25 +0000 (14:59 -0400)
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 0ed8cebe376b20069c90dd15d468dc6e19a24f1d..0baa7353f263041e557ee213de8338ffa84a1a79 100644 (file)
@@ -1,6 +1,325 @@
 <!-- doc/src/sgml/release-8.4.sgml -->
 <!-- See header comment in release.sgml about typical markup -->
 
+ <sect1 id="release-8-4-22">
+  <title>Release 8.4.22</title>
+
+  <note>
+  <title>Release Date</title>
+  <simpara>2014-07-24</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 8.4.21.
+   For information about new features in the 8.4 major release, see
+   <xref linkend="release-8-4">.
+  </para>
+
+  <para>
+   This is expected to be the last <productname>PostgreSQL</> release
+   in the 8.4.X series.  Users are encouraged to update to a newer
+   release branch soon.
+  </para>
+
+  <sect2>
+   <title>Migration to Version 8.4.22</title>
+
+   <para>
+    A dump/restore is not required for those running 8.4.X.
+   </para>
+
+   <para>
+    However, this release corrects an index corruption problem in some GiST
+    indexes.  See the first changelog entry below to find out whether your
+    installation has been affected and what steps you should take if so.
+   </para>
+
+   <para>
+    Also, 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>
+      Correctly initialize padding bytes in <filename>contrib/btree_gist</>
+      indexes on <type>bit</> columns (Heikki Linnakangas)
+     </para>
+
+     <para>
+      This error could result in incorrect query results due to values that
+      should compare equal not being seen as equal.
+      Users with GiST indexes on <type>bit</> or <type>bit varying</>
+      columns should <command>REINDEX</> those indexes after installing this
+      update.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Protect against torn pages when deleting GIN list pages (Heikki
+      Linnakangas)
+     </para>
+
+     <para>
+      This fix prevents possible index corruption if a system crash occurs
+      while the page update is being written to disk.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possibly-incorrect cache invalidation during nested calls
+      to <function>ReceiveSharedInvalidMessages</> (Andres Freund)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Don't assume a subquery's output is unique if there's a set-returning
+      function in its targetlist (David Rowley)
+     </para>
+
+     <para>
+      This oversight could lead to misoptimization of constructs
+      like <literal>WHERE x IN (SELECT y, generate_series(1,10) FROM t GROUP
+      BY y)</literal>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix failure to detoast fields in composite elements of structured
+      types (Tom Lane)
+     </para>
+
+     <para>
+      This corrects cases where TOAST pointers could be copied into other
+      tables without being dereferenced.  If the original data is later
+      deleted, it would lead to errors like <quote>missing chunk number 0
+      for toast value ...</> when the now-dangling pointer is used.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <quote>record type has not been registered</> failures with
+      whole-row references to the output of Append plan nodes (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible crash when invoking a user-defined function while
+      rewinding a cursor (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix query-lifespan memory leak while evaluating the arguments for a
+      function in <literal>FROM</> (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix session-lifespan memory leaks in regular-expression processing
+      (Tom Lane, Arthur O'Dwyer, Greg Stark)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix data encoding error in <filename>hungarian.stop</> (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix liveness checks for rows that were inserted in the current
+      transaction and then deleted by a now-rolled-back subtransaction
+      (Andres Freund)
+     </para>
+
+     <para>
+      This could cause problems (at least spurious warnings, and at worst an
+      infinite loop) if <command>CREATE INDEX</> or <command>CLUSTER</> were
+      done later in the same transaction.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Clear <structname>pg_stat_activity</>.<structfield>xact_start</>
+      during <command>PREPARE TRANSACTION</> (Andres Freund)
+     </para>
+
+     <para>
+      After the <command>PREPARE</>, the originating session is no longer in
+      a transaction, so it should not continue to display a transaction
+      start time.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <command>REASSIGN OWNED</> to not fail for text search objects
+      (&Aacute;lvaro Herrera)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Block signals during postmaster startup (Tom Lane)
+     </para>
+
+     <para>
+      This ensures that the postmaster will properly clean up after itself
+      if, for example, it receives <systemitem>SIGINT</> while still
+      starting up.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Secure Unix-domain sockets of temporary postmasters started during
+      <literal>make check</> (Noah Misch)
+     </para>
+
+     <para>
+      Any local user able to access the socket file could connect as the
+      server's bootstrap superuser, then proceed to execute arbitrary code as
+      the operating-system user running the test, as we previously noted in
+      CVE-2014-0067.  This change defends against that risk by placing the
+      server's socket in a temporary, mode 0700 subdirectory
+      of <filename>/tmp</>.  The hazard remains however on platforms where
+      Unix sockets are not supported, notably Windows, because then the
+      temporary postmaster must accept local TCP connections.
+     </para>
+
+     <para>
+      A useful side effect of this change is to simplify
+      <literal>make check</> testing in builds that
+      override <literal>DEFAULT_PGSOCKET_DIR</>.  Popular non-default values
+      like <filename>/var/run/postgresql</> are often not writable by the
+      build user, requiring workarounds that will no longer be necessary.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      On Windows, allow new sessions to absorb values of PGC_BACKEND
+      parameters (such as <xref linkend="guc-log-connections">) from the
+      configuration file (Amit Kapila)
+     </para>
+
+     <para>
+      Previously, if such a parameter were changed in the file post-startup,
+      the change would have no effect.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Properly quote executable path names on Windows (Nikhil Deshpande)
+     </para>
+
+     <para>
+      This oversight could cause <application>initdb</>
+      and <application>pg_upgrade</> to fail on Windows, if the installation
+      path contained both spaces and <literal>@</> signs.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix linking of <application>libpython</> on OS X (Tom Lane)
+     </para>
+
+     <para>
+      The method we previously used can fail with the Python library
+      supplied by Xcode 5.0 and later.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Avoid buffer bloat in <application>libpq</> when the server
+      consistently sends data faster than the client can absorb it
+      (Shin-ichi Morita, Tom Lane)
+     </para>
+
+     <para>
+      <application>libpq</> could be coerced into enlarging its input buffer
+      until it runs out of memory (which would be reported misleadingly
+      as <quote>lost synchronization with server</>).  Under ordinary
+      circumstances it's quite far-fetched that data could be continuously
+      transmitted more quickly than the <function>recv()</> loop can
+      absorb it, but this has been observed when the client is artificially
+      slowed by scheduler constraints.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ensure that LDAP lookup attempts in <application>libpq</> time out as
+      intended (Laurenz Albe)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <application>pg_restore</>'s processing of old-style large object
+      comments (Tom Lane)
+     </para>
+
+     <para>
+      A direct-to-database restore from an archive file generated by a
+      pre-9.0 version of <application>pg_dump</> would usually fail if the
+      archive contained more than a few comments for large objects.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In <filename>contrib/pgcrypto</> functions, ensure sensitive
+      information is cleared from stack variables before returning
+      (Marko Kreen)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In <filename>contrib/uuid-ossp</>, cache the state of the OSSP UUID
+      library across calls (Tom Lane)
+     </para>
+
+     <para>
+      This improves the efficiency of UUID generation and reduces the amount
+      of entropy drawn from <filename>/dev/urandom</>, on platforms that
+      have that.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Update time zone data files to <application>tzdata</> release 2014e
+      for DST law changes in Crimea, Egypt, and Morocco.
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
  <sect1 id="release-8-4-21">
   <title>Release 8.4.21</title>
 
       for DST law changes in Fiji and Turkey, plus historical changes in
       Israel and Ukraine.
      </para>
-
-     <para>
-     </para>
     </listitem>
 
    </itemizedlist>
       Prevent crash triggered by constant-false WHERE conditions during
       GEQO optimization (Tom Lane)
      </para>
-
-     <para>
-     </para>
     </listitem>
 
     <listitem>
index 377e9704297cd89ffd894cd08480495d4a960b0a..0c77d248d2c75a99bbd50561c16aa700a4d95f5c 100644 (file)
@@ -1,6 +1,352 @@
 <!-- doc/src/sgml/release-9.0.sgml -->
 <!-- See header comment in release.sgml about typical markup -->
 
+ <sect1 id="release-9-0-18">
+  <title>Release 9.0.18</title>
+
+  <note>
+  <title>Release Date</title>
+  <simpara>2014-07-24</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 9.0.17.
+   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.18</title>
+
+   <para>
+    A dump/restore is not required for those running 9.0.X.
+   </para>
+
+   <para>
+    However, this release corrects an index corruption problem in some GiST
+    indexes.  See the first changelog entry below to find out whether your
+    installation has been affected and what steps you should take if so.
+   </para>
+
+   <para>
+    Also, 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>
+      Correctly initialize padding bytes in <filename>contrib/btree_gist</>
+      indexes on <type>bit</> columns (Heikki Linnakangas)
+     </para>
+
+     <para>
+      This error could result in incorrect query results due to values that
+      should compare equal not being seen as equal.
+      Users with GiST indexes on <type>bit</> or <type>bit varying</>
+      columns should <command>REINDEX</> those indexes after installing this
+      update.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Protect against torn pages when deleting GIN list pages (Heikki
+      Linnakangas)
+     </para>
+
+     <para>
+      This fix prevents possible index corruption if a system crash occurs
+      while the page update is being written to disk.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Don't clear the right-link of a GiST index page while replaying
+      updates from WAL (Heikki Linnakangas)
+     </para>
+
+     <para>
+      This error could lead to transiently wrong answers from GiST index
+      scans performed in Hot Standby.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possibly-incorrect cache invalidation during nested calls
+      to <function>ReceiveSharedInvalidMessages</> (Andres Freund)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Don't assume a subquery's output is unique if there's a set-returning
+      function in its targetlist (David Rowley)
+     </para>
+
+     <para>
+      This oversight could lead to misoptimization of constructs
+      like <literal>WHERE x IN (SELECT y, generate_series(1,10) FROM t GROUP
+      BY y)</literal>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix failure to detoast fields in composite elements of structured
+      types (Tom Lane)
+     </para>
+
+     <para>
+      This corrects cases where TOAST pointers could be copied into other
+      tables without being dereferenced.  If the original data is later
+      deleted, it would lead to errors like <quote>missing chunk number 0
+      for toast value ...</> when the now-dangling pointer is used.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <quote>record type has not been registered</> failures with
+      whole-row references to the output of Append plan nodes (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible crash when invoking a user-defined function while
+      rewinding a cursor (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix query-lifespan memory leak while evaluating the arguments for a
+      function in <literal>FROM</> (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix session-lifespan memory leaks in regular-expression processing
+      (Tom Lane, Arthur O'Dwyer, Greg Stark)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix data encoding error in <filename>hungarian.stop</> (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix liveness checks for rows that were inserted in the current
+      transaction and then deleted by a now-rolled-back subtransaction
+      (Andres Freund)
+     </para>
+
+     <para>
+      This could cause problems (at least spurious warnings, and at worst an
+      infinite loop) if <command>CREATE INDEX</> or <command>CLUSTER</> were
+      done later in the same transaction.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Clear <structname>pg_stat_activity</>.<structfield>xact_start</>
+      during <command>PREPARE TRANSACTION</> (Andres Freund)
+     </para>
+
+     <para>
+      After the <command>PREPARE</>, the originating session is no longer in
+      a transaction, so it should not continue to display a transaction
+      start time.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <command>REASSIGN OWNED</> to not fail for text search objects
+      (&Aacute;lvaro Herrera)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Block signals during postmaster startup (Tom Lane)
+     </para>
+
+     <para>
+      This ensures that the postmaster will properly clean up after itself
+      if, for example, it receives <systemitem>SIGINT</> while still
+      starting up.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Secure Unix-domain sockets of temporary postmasters started during
+      <literal>make check</> (Noah Misch)
+     </para>
+
+     <para>
+      Any local user able to access the socket file could connect as the
+      server's bootstrap superuser, then proceed to execute arbitrary code as
+      the operating-system user running the test, as we previously noted in
+      CVE-2014-0067.  This change defends against that risk by placing the
+      server's socket in a temporary, mode 0700 subdirectory
+      of <filename>/tmp</>.  The hazard remains however on platforms where
+      Unix sockets are not supported, notably Windows, because then the
+      temporary postmaster must accept local TCP connections.
+     </para>
+
+     <para>
+      A useful side effect of this change is to simplify
+      <literal>make check</> testing in builds that
+      override <literal>DEFAULT_PGSOCKET_DIR</>.  Popular non-default values
+      like <filename>/var/run/postgresql</> are often not writable by the
+      build user, requiring workarounds that will no longer be necessary.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix tablespace creation WAL replay to work on Windows (MauMau)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix detection of socket creation failures on Windows (Bruce Momjian)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      On Windows, allow new sessions to absorb values of PGC_BACKEND
+      parameters (such as <xref linkend="guc-log-connections">) from the
+      configuration file (Amit Kapila)
+     </para>
+
+     <para>
+      Previously, if such a parameter were changed in the file post-startup,
+      the change would have no effect.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Properly quote executable path names on Windows (Nikhil Deshpande)
+     </para>
+
+     <para>
+      This oversight could cause <application>initdb</>
+      and <application>pg_upgrade</> to fail on Windows, if the installation
+      path contained both spaces and <literal>@</> signs.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix linking of <application>libpython</> on OS X (Tom Lane)
+     </para>
+
+     <para>
+      The method we previously used can fail with the Python library
+      supplied by Xcode 5.0 and later.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Avoid buffer bloat in <application>libpq</> when the server
+      consistently sends data faster than the client can absorb it
+      (Shin-ichi Morita, Tom Lane)
+     </para>
+
+     <para>
+      <application>libpq</> could be coerced into enlarging its input buffer
+      until it runs out of memory (which would be reported misleadingly
+      as <quote>lost synchronization with server</>).  Under ordinary
+      circumstances it's quite far-fetched that data could be continuously
+      transmitted more quickly than the <function>recv()</> loop can
+      absorb it, but this has been observed when the client is artificially
+      slowed by scheduler constraints.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ensure that LDAP lookup attempts in <application>libpq</> time out as
+      intended (Laurenz Albe)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <application>ecpg</> to do the right thing when an array
+      of <type>char *</> is the target for a FETCH statement returning more
+      than one row, as well as some other array-handling fixes
+      (Ashutosh Bapat)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <application>pg_restore</>'s processing of old-style large object
+      comments (Tom Lane)
+     </para>
+
+     <para>
+      A direct-to-database restore from an archive file generated by a
+      pre-9.0 version of <application>pg_dump</> would usually fail if the
+      archive contained more than a few comments for large objects.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In <filename>contrib/pgcrypto</> functions, ensure sensitive
+      information is cleared from stack variables before returning
+      (Marko Kreen)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In <filename>contrib/uuid-ossp</>, cache the state of the OSSP UUID
+      library across calls (Tom Lane)
+     </para>
+
+     <para>
+      This improves the efficiency of UUID generation and reduces the amount
+      of entropy drawn from <filename>/dev/urandom</>, on platforms that
+      have that.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Update time zone data files to <application>tzdata</> release 2014e
+      for DST law changes in Crimea, Egypt, and Morocco.
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
  <sect1 id="release-9-0-17">
   <title>Release 9.0.17</title>
 
       for DST law changes in Fiji and Turkey, plus historical changes in
       Israel and Ukraine.
      </para>
-
-     <para>
-     </para>
     </listitem>
 
    </itemizedlist>
       Prevent crash triggered by constant-false WHERE conditions during
       GEQO optimization (Tom Lane)
      </para>
-
-     <para>
-     </para>
     </listitem>
 
     <listitem>
index 373503d91f90dcf8657fcae10d736150b8e5f874..4f86b64e8463b1c1b88221a43b2c4e45acc0349c 100644 (file)
@@ -1,6 +1,389 @@
 <!-- doc/src/sgml/release-9.1.sgml -->
 <!-- See header comment in release.sgml about typical markup -->
 
+ <sect1 id="release-9-1-14">
+  <title>Release 9.1.14</title>
+
+  <note>
+  <title>Release Date</title>
+  <simpara>2014-07-24</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 9.1.13.
+   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.14</title>
+
+   <para>
+    A dump/restore is not required for those running 9.1.X.
+   </para>
+
+   <para>
+    However, this release corrects an index corruption problem in some GiST
+    indexes.  See the first changelog entry below to find out whether your
+    installation has been affected and what steps you should take if so.
+   </para>
+
+   <para>
+    Also, 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>
+      Correctly initialize padding bytes in <filename>contrib/btree_gist</>
+      indexes on <type>bit</> columns (Heikki Linnakangas)
+     </para>
+
+     <para>
+      This error could result in incorrect query results due to values that
+      should compare equal not being seen as equal.
+      Users with GiST indexes on <type>bit</> or <type>bit varying</>
+      columns should <command>REINDEX</> those indexes after installing this
+      update.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Protect against torn pages when deleting GIN list pages (Heikki
+      Linnakangas)
+     </para>
+
+     <para>
+      This fix prevents possible index corruption if a system crash occurs
+      while the page update is being written to disk.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Don't clear the right-link of a GiST index page while replaying
+      updates from WAL (Heikki Linnakangas)
+     </para>
+
+     <para>
+      This error could lead to transiently wrong answers from GiST index
+      scans performed in Hot Standby.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix feedback status when <xref linkend="guc-hot-standby-feedback"> is
+      turned off on-the-fly (Simon Riggs)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possibly-incorrect cache invalidation during nested calls
+      to <function>ReceiveSharedInvalidMessages</> (Andres Freund)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <quote>could not find pathkey item to sort</> planner failures
+      with <literal>UNION ALL</> over subqueries reading from tables with
+      inheritance children (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Don't assume a subquery's output is unique if there's a set-returning
+      function in its targetlist (David Rowley)
+     </para>
+
+     <para>
+      This oversight could lead to misoptimization of constructs
+      like <literal>WHERE x IN (SELECT y, generate_series(1,10) FROM t GROUP
+      BY y)</literal>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix failure to detoast fields in composite elements of structured
+      types (Tom Lane)
+     </para>
+
+     <para>
+      This corrects cases where TOAST pointers could be copied into other
+      tables without being dereferenced.  If the original data is later
+      deleted, it would lead to errors like <quote>missing chunk number 0
+      for toast value ...</> when the now-dangling pointer is used.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <quote>record type has not been registered</> failures with
+      whole-row references to the output of Append plan nodes (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible crash when invoking a user-defined function while
+      rewinding a cursor (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix query-lifespan memory leak while evaluating the arguments for a
+      function in <literal>FROM</> (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix session-lifespan memory leaks in regular-expression processing
+      (Tom Lane, Arthur O'Dwyer, Greg Stark)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix data encoding error in <filename>hungarian.stop</> (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Prevent foreign tables from being created with OIDS
+      when <xref linkend="guc-default-with-oids"> is true
+      (Etsuro Fujita)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix liveness checks for rows that were inserted in the current
+      transaction and then deleted by a now-rolled-back subtransaction
+      (Andres Freund)
+     </para>
+
+     <para>
+      This could cause problems (at least spurious warnings, and at worst an
+      infinite loop) if <command>CREATE INDEX</> or <command>CLUSTER</> were
+      done later in the same transaction.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Clear <structname>pg_stat_activity</>.<structfield>xact_start</>
+      during <command>PREPARE TRANSACTION</> (Andres Freund)
+     </para>
+
+     <para>
+      After the <command>PREPARE</>, the originating session is no longer in
+      a transaction, so it should not continue to display a transaction
+      start time.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <command>REASSIGN OWNED</> to not fail for text search objects
+      (&Aacute;lvaro Herrera)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Block signals during postmaster startup (Tom Lane)
+     </para>
+
+     <para>
+      This ensures that the postmaster will properly clean up after itself
+      if, for example, it receives <systemitem>SIGINT</> while still
+      starting up.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix client host name lookup when processing <filename>pg_hba.conf</>
+      entries that specify host names instead of IP addresses (Tom Lane)
+     </para>
+
+     <para>
+      Ensure that reverse-DNS lookup failures are reported, instead of just
+      silently not matching such entries.  Also ensure that we make only
+      one reverse-DNS lookup attempt per connection, not one per host name
+      entry, which is what previously happened if the lookup attempts failed.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Secure Unix-domain sockets of temporary postmasters started during
+      <literal>make check</> (Noah Misch)
+     </para>
+
+     <para>
+      Any local user able to access the socket file could connect as the
+      server's bootstrap superuser, then proceed to execute arbitrary code as
+      the operating-system user running the test, as we previously noted in
+      CVE-2014-0067.  This change defends against that risk by placing the
+      server's socket in a temporary, mode 0700 subdirectory
+      of <filename>/tmp</>.  The hazard remains however on platforms where
+      Unix sockets are not supported, notably Windows, because then the
+      temporary postmaster must accept local TCP connections.
+     </para>
+
+     <para>
+      A useful side effect of this change is to simplify
+      <literal>make check</> testing in builds that
+      override <literal>DEFAULT_PGSOCKET_DIR</>.  Popular non-default values
+      like <filename>/var/run/postgresql</> are often not writable by the
+      build user, requiring workarounds that will no longer be necessary.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix tablespace creation WAL replay to work on Windows (MauMau)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix detection of socket creation failures on Windows (Bruce Momjian)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      On Windows, allow new sessions to absorb values of PGC_BACKEND
+      parameters (such as <xref linkend="guc-log-connections">) from the
+      configuration file (Amit Kapila)
+     </para>
+
+     <para>
+      Previously, if such a parameter were changed in the file post-startup,
+      the change would have no effect.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Properly quote executable path names on Windows (Nikhil Deshpande)
+     </para>
+
+     <para>
+      This oversight could cause <application>initdb</>
+      and <application>pg_upgrade</> to fail on Windows, if the installation
+      path contained both spaces and <literal>@</> signs.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix linking of <application>libpython</> on OS X (Tom Lane)
+     </para>
+
+     <para>
+      The method we previously used can fail with the Python library
+      supplied by Xcode 5.0 and later.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Avoid buffer bloat in <application>libpq</> when the server
+      consistently sends data faster than the client can absorb it
+      (Shin-ichi Morita, Tom Lane)
+     </para>
+
+     <para>
+      <application>libpq</> could be coerced into enlarging its input buffer
+      until it runs out of memory (which would be reported misleadingly
+      as <quote>lost synchronization with server</>).  Under ordinary
+      circumstances it's quite far-fetched that data could be continuously
+      transmitted more quickly than the <function>recv()</> loop can
+      absorb it, but this has been observed when the client is artificially
+      slowed by scheduler constraints.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ensure that LDAP lookup attempts in <application>libpq</> time out as
+      intended (Laurenz Albe)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <application>ecpg</> to do the right thing when an array
+      of <type>char *</> is the target for a FETCH statement returning more
+      than one row, as well as some other array-handling fixes
+      (Ashutosh Bapat)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <application>pg_restore</>'s processing of old-style large object
+      comments (Tom Lane)
+     </para>
+
+     <para>
+      A direct-to-database restore from an archive file generated by a
+      pre-9.0 version of <application>pg_dump</> would usually fail if the
+      archive contained more than a few comments for large objects.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In <filename>contrib/pgcrypto</> functions, ensure sensitive
+      information is cleared from stack variables before returning
+      (Marko Kreen)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In <filename>contrib/uuid-ossp</>, cache the state of the OSSP UUID
+      library across calls (Tom Lane)
+     </para>
+
+     <para>
+      This improves the efficiency of UUID generation and reduces the amount
+      of entropy drawn from <filename>/dev/urandom</>, on platforms that
+      have that.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Update time zone data files to <application>tzdata</> release 2014e
+      for DST law changes in Crimea, Egypt, and Morocco.
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
  <sect1 id="release-9-1-13">
   <title>Release 9.1.13</title>
 
       for DST law changes in Fiji and Turkey, plus historical changes in
       Israel and Ukraine.
      </para>
-
-     <para>
-     </para>
     </listitem>
 
    </itemizedlist>
       Improve selectivity estimation for text search queries involving
       prefixes, i.e. <replaceable>word</><literal>:*</> patterns  (Tom Lane)
      </para>
-
-     <para>
-     </para>
     </listitem>
 
     <listitem>
index dd13cc1b6090044c1e533e106e72ba5ce145c3e6..911f52aa3ef0073d12be7806e28d5f1ddc701fa5 100644 (file)
@@ -1,6 +1,487 @@
 <!-- doc/src/sgml/release-9.2.sgml -->
 <!-- See header comment in release.sgml about typical markup -->
 
+ <sect1 id="release-9-2-9">
+  <title>Release 9.2.9</title>
+
+  <note>
+  <title>Release Date</title>
+  <simpara>2014-07-24</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 9.2.8.
+   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.9</title>
+
+   <para>
+    A dump/restore is not required for those running 9.2.X.
+   </para>
+
+   <para>
+    However, this release corrects an index corruption problem in some GiST
+    indexes.  See the first changelog entry below to find out whether your
+    installation has been affected and what steps you should take if so.
+   </para>
+
+   <para>
+    Also, 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>
+      Correctly initialize padding bytes in <filename>contrib/btree_gist</>
+      indexes on <type>bit</> columns (Heikki Linnakangas)
+     </para>
+
+     <para>
+      This error could result in incorrect query results due to values that
+      should compare equal not being seen as equal.
+      Users with GiST indexes on <type>bit</> or <type>bit varying</>
+      columns should <command>REINDEX</> those indexes after installing this
+      update.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Protect against torn pages when deleting GIN list pages (Heikki
+      Linnakangas)
+     </para>
+
+     <para>
+      This fix prevents possible index corruption if a system crash occurs
+      while the page update is being written to disk.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Don't clear the right-link of a GiST index page while replaying
+      updates from WAL (Heikki Linnakangas)
+     </para>
+
+     <para>
+      This error could lead to transiently wrong answers from GiST index
+      scans performed in Hot Standby.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix corner-case infinite loop during insertion into an SP-GiST text
+      index (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix feedback status when <xref linkend="guc-hot-standby-feedback"> is
+      turned off on-the-fly (Simon Riggs)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possibly-incorrect cache invalidation during nested calls
+      to <function>ReceiveSharedInvalidMessages</> (Andres Freund)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix planner's mishandling of nested PlaceHolderVars generated in
+      nested-nestloop plans (Tom Lane)
+     </para>
+
+     <para>
+      This oversight could result in <quote>variable not found in subplan
+      target lists</> errors, or in silently wrong query results.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <quote>could not find pathkey item to sort</> planner failures
+      with <literal>UNION ALL</> over subqueries reading from tables with
+      inheritance children (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Don't assume a subquery's output is unique if there's a set-returning
+      function in its targetlist (David Rowley)
+     </para>
+
+     <para>
+      This oversight could lead to misoptimization of constructs
+      like <literal>WHERE x IN (SELECT y, generate_series(1,10) FROM t GROUP
+      BY y)</literal>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Improve planner to drop constant-NULL inputs
+      of <literal>AND</>/<literal>OR</> when possible (Tom Lane)
+     </para>
+
+     <para>
+      This change fixes some cases where the more aggressive parameter
+      substitution done by 9.2 and later can lead to a worse plan than
+      older versions produced.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix identification of input type category in <function>to_json()</>
+      and friends (Tom Lane)
+     </para>
+
+     <para>
+      This is known to have led to inadequate quoting of <type>money</>
+      fields in the <type>JSON</> result, and there may have been wrong
+      results for other data types as well.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix failure to detoast fields in composite elements of structured
+      types (Tom Lane)
+     </para>
+
+     <para>
+      This corrects cases where TOAST pointers could be copied into other
+      tables without being dereferenced.  If the original data is later
+      deleted, it would lead to errors like <quote>missing chunk number 0
+      for toast value ...</> when the now-dangling pointer is used.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <quote>record type has not been registered</> failures with
+      whole-row references to the output of Append plan nodes (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible crash when invoking a user-defined function while
+      rewinding a cursor (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix query-lifespan memory leak while evaluating the arguments for a
+      function in <literal>FROM</> (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix session-lifespan memory leaks in regular-expression processing
+      (Tom Lane, Arthur O'Dwyer, Greg Stark)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix data encoding error in <filename>hungarian.stop</> (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Prevent foreign tables from being created with OIDS
+      when <xref linkend="guc-default-with-oids"> is true
+      (Etsuro Fujita)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix liveness checks for rows that were inserted in the current
+      transaction and then deleted by a now-rolled-back subtransaction
+      (Andres Freund)
+     </para>
+
+     <para>
+      This could cause problems (at least spurious warnings, and at worst an
+      infinite loop) if <command>CREATE INDEX</> or <command>CLUSTER</> were
+      done later in the same transaction.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Clear <structname>pg_stat_activity</>.<structfield>xact_start</>
+      during <command>PREPARE TRANSACTION</> (Andres Freund)
+     </para>
+
+     <para>
+      After the <command>PREPARE</>, the originating session is no longer in
+      a transaction, so it should not continue to display a transaction
+      start time.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <command>REASSIGN OWNED</> to not fail for text search objects
+      (&Aacute;lvaro Herrera)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Block signals during postmaster startup (Tom Lane)
+     </para>
+
+     <para>
+      This ensures that the postmaster will properly clean up after itself
+      if, for example, it receives <systemitem>SIGINT</> while still
+      starting up.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix client host name lookup when processing <filename>pg_hba.conf</>
+      entries that specify host names instead of IP addresses (Tom Lane)
+     </para>
+
+     <para>
+      Ensure that reverse-DNS lookup failures are reported, instead of just
+      silently not matching such entries.  Also ensure that we make only
+      one reverse-DNS lookup attempt per connection, not one per host name
+      entry, which is what previously happened if the lookup attempts failed.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Allow the root user to use <literal>postgres -C variable</> and
+      <literal>postgres --describe-config</> (MauMau)
+     </para>
+
+     <para>
+      The prohibition on starting the server as root does not need to extend
+      to these operations, and relaxing it prevents failure
+      of <application>pg_ctl</> in some scenarios.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Secure Unix-domain sockets of temporary postmasters started during
+      <literal>make check</> (Noah Misch)
+     </para>
+
+     <para>
+      Any local user able to access the socket file could connect as the
+      server's bootstrap superuser, then proceed to execute arbitrary code as
+      the operating-system user running the test, as we previously noted in
+      CVE-2014-0067.  This change defends against that risk by placing the
+      server's socket in a temporary, mode 0700 subdirectory
+      of <filename>/tmp</>.  The hazard remains however on platforms where
+      Unix sockets are not supported, notably Windows, because then the
+      temporary postmaster must accept local TCP connections.
+     </para>
+
+     <para>
+      A useful side effect of this change is to simplify
+      <literal>make check</> testing in builds that
+      override <literal>DEFAULT_PGSOCKET_DIR</>.  Popular non-default values
+      like <filename>/var/run/postgresql</> are often not writable by the
+      build user, requiring workarounds that will no longer be necessary.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix tablespace creation WAL replay to work on Windows (MauMau)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix detection of socket creation failures on Windows (Bruce Momjian)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      On Windows, allow new sessions to absorb values of PGC_BACKEND
+      parameters (such as <xref linkend="guc-log-connections">) from the
+      configuration file (Amit Kapila)
+     </para>
+
+     <para>
+      Previously, if such a parameter were changed in the file post-startup,
+      the change would have no effect.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Properly quote executable path names on Windows (Nikhil Deshpande)
+     </para>
+
+     <para>
+      This oversight could cause <application>initdb</>
+      and <application>pg_upgrade</> to fail on Windows, if the installation
+      path contained both spaces and <literal>@</> signs.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix linking of <application>libpython</> on OS X (Tom Lane)
+     </para>
+
+     <para>
+      The method we previously used can fail with the Python library
+      supplied by Xcode 5.0 and later.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Avoid buffer bloat in <application>libpq</> when the server
+      consistently sends data faster than the client can absorb it
+      (Shin-ichi Morita, Tom Lane)
+     </para>
+
+     <para>
+      <application>libpq</> could be coerced into enlarging its input buffer
+      until it runs out of memory (which would be reported misleadingly
+      as <quote>lost synchronization with server</>).  Under ordinary
+      circumstances it's quite far-fetched that data could be continuously
+      transmitted more quickly than the <function>recv()</> loop can
+      absorb it, but this has been observed when the client is artificially
+      slowed by scheduler constraints.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ensure that LDAP lookup attempts in <application>libpq</> time out as
+      intended (Laurenz Albe)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <application>ecpg</> to do the right thing when an array
+      of <type>char *</> is the target for a FETCH statement returning more
+      than one row, as well as some other array-handling fixes
+      (Ashutosh Bapat)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <application>pg_restore</>'s processing of old-style large object
+      comments (Tom Lane)
+     </para>
+
+     <para>
+      A direct-to-database restore from an archive file generated by a
+      pre-9.0 version of <application>pg_dump</> would usually fail if the
+      archive contained more than a few comments for large objects.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <application>pg_upgrade</> for cases where the new server creates
+      a TOAST table but the old version did not (Bruce Momjian)
+     </para>
+
+     <para>
+      This rare situation would manifest as <quote>relation OID mismatch</>
+      errors.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Prevent <filename>contrib/auto_explain</> from changing the output of
+      a user's <command>EXPLAIN</> (Tom Lane)
+     </para>
+
+     <para>
+      If <filename>auto_explain</> is active, it could cause
+      an <literal>EXPLAIN (ANALYZE, TIMING OFF)</> command to nonetheless
+      print timing information.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix query-lifespan memory leak in <filename>contrib/dblink</>
+      (MauMau, Joe Conway)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In <filename>contrib/pgcrypto</> functions, ensure sensitive
+      information is cleared from stack variables before returning
+      (Marko Kreen)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Prevent use of already-freed memory in
+      <filename>contrib/pgstattuple</>'s <function>pgstat_heap()</>
+      (Noah Misch)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In <filename>contrib/uuid-ossp</>, cache the state of the OSSP UUID
+      library across calls (Tom Lane)
+     </para>
+
+     <para>
+      This improves the efficiency of UUID generation and reduces the amount
+      of entropy drawn from <filename>/dev/urandom</>, on platforms that
+      have that.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Update time zone data files to <application>tzdata</> release 2014e
+      for DST law changes in Crimea, Egypt, and Morocco.
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
  <sect1 id="release-9-2-8">
   <title>Release 9.2.8</title>
 
       for DST law changes in Fiji and Turkey, plus historical changes in
       Israel and Ukraine.
      </para>
-
-     <para>
-     </para>
     </listitem>
 
    </itemizedlist>
       some <application>psql</> <literal>\d</> commands
       (Peter Eisentraut, Tom Lane)
      </para>
-
-     <para>
-     </para>
     </listitem>
 
     <listitem>
       Improve selectivity estimation for text search queries involving
       prefixes, i.e. <replaceable>word</><literal>:*</> patterns  (Tom Lane)
      </para>
-
-     <para>
-     </para>
     </listitem>
 
     <listitem>
index 64b1801f3c7a3a79dd6dc8646417e3a99a2d4586..8788b80f024f9a511c3f59487719d3e2fa7b8f6e 100644 (file)
 <!-- doc/src/sgml/release-9.3.sgml -->
 <!-- See header comment in release.sgml about typical markup -->
 
+ <sect1 id="release-9-3-5">
+  <title>Release 9.3.5</title>
+
+  <note>
+  <title>Release Date</title>
+  <simpara>2014-07-24</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 9.3.4.
+   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.5</title>
+
+   <para>
+    A dump/restore is not required for those running 9.3.X.
+   </para>
+
+   <para>
+    However, this release corrects a logic error
+    in <application>pg_upgrade</>, as well as an index corruption problem in
+    some GiST indexes.  See the first two changelog entries below to find out
+    whether your installation has been affected and what steps you should take
+    if so.
+   </para>
+
+   <para>
+    Also, if you are upgrading from a version earlier than 9.3.4,
+    see <xref linkend="release-9-3-4">.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Changes</title>
+
+   <itemizedlist>
+
+<!--
+Author: Bruce Momjian <bruce@momjian.us>
+Branch: master [0f7482733] 2014-06-24 16:11:06 -0400
+Branch: REL9_4_STABLE [dd5369047] 2014-06-24 16:11:06 -0400
+Branch: REL9_3_STABLE [cc5841809] 2014-06-24 16:11:06 -0400
+-->
+
+    <listitem>
+     <para>
+      In <application>pg_upgrade</>, remove <filename>pg_multixact</> files
+      left behind by <application>initdb</> (Bruce Momjian)
+     </para>
+
+     <para>
+      If you used a pre-9.3.5 version of <application>pg_upgrade</> to
+      upgrade a database cluster to 9.3, it might have left behind a file
+      <filename>$PGDATA/pg_multixact/offsets/0000</> that should not be
+      there and will eventually cause problems in <command>VACUUM</>.
+      <emphasis>However, in common cases this file is actually valid and
+      must not be removed.</emphasis>
+      To determine whether your installation has this problem, run this
+      query as superuser, in any database of the cluster:
+<programlisting>
+WITH list(file) AS (SELECT * FROM pg_ls_dir('pg_multixact/offsets'))
+SELECT EXISTS (SELECT * FROM list WHERE file = '0000') AND
+       NOT EXISTS (SELECT * FROM list WHERE file = '0001') AND
+       NOT EXISTS (SELECT * FROM list WHERE file = 'FFFF') AND
+       EXISTS (SELECT * FROM list WHERE file != '0000')
+       AS file_0000_removal_required;
+</programlisting>
+      If this query returns <literal>t</>, manually remove the file
+      <filename>$PGDATA/pg_multixact/offsets/0000</>.
+      Do nothing if the query returns <literal>f</>.
+     </para>
+    </listitem>
+
+<!--
+Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
+Branch: master Release: REL9_4_BR [540ac7cea] 2014-05-13 15:15:13 +0300
+Branch: REL9_3_STABLE [d5b912c90] 2014-05-13 15:27:14 +0300
+Branch: REL9_2_STABLE [0d8d0d027] 2014-05-13 15:27:21 +0300
+Branch: REL9_1_STABLE [1913d0f28] 2014-05-13 15:27:28 +0300
+Branch: REL9_0_STABLE [c87c43f08] 2014-05-13 15:27:36 +0300
+Branch: REL8_4_STABLE [e31d77c96] 2014-05-13 15:27:43 +0300
+-->
+
+    <listitem>
+     <para>
+      Correctly initialize padding bytes in <filename>contrib/btree_gist</>
+      indexes on <type>bit</> columns (Heikki Linnakangas)
+     </para>
+
+     <para>
+      This error could result in incorrect query results due to values that
+      should compare equal not being seen as equal.
+      Users with GiST indexes on <type>bit</> or <type>bit varying</>
+      columns should <command>REINDEX</> those indexes after installing this
+      update.
+     </para>
+    </listitem>
+
+<!--
+Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
+Branch: master Release: REL9_4_BR [4f7bb4b2a] 2014-05-08 14:50:22 +0300
+Branch: REL9_3_STABLE [34572920c] 2014-05-08 14:43:04 +0300
+Branch: REL9_2_STABLE [31633f992] 2014-05-08 14:43:39 +0300
+Branch: REL9_1_STABLE [686a7194e] 2014-05-08 14:43:58 +0300
+Branch: REL9_0_STABLE [8b4efe1f3] 2014-05-08 14:44:06 +0300
+Branch: REL8_4_STABLE [be7830596] 2014-05-08 14:46:43 +0300
+-->
+
+    <listitem>
+     <para>
+      Protect against torn pages when deleting GIN list pages (Heikki
+      Linnakangas)
+     </para>
+
+     <para>
+      This fix prevents possible index corruption if a system crash occurs
+      while the page update is being written to disk.
+     </para>
+    </listitem>
+
+<!--
+Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
+Branch: master Release: REL9_4_BR [7ca32e255] 2014-04-08 14:51:40 +0300
+Branch: REL9_3_STABLE [601c01e08] 2014-04-08 14:51:49 +0300
+Branch: REL9_2_STABLE [02b9fd73e] 2014-04-08 14:51:56 +0300
+Branch: REL9_1_STABLE [ac0078c1d] 2014-04-08 14:52:01 +0300
+Branch: REL9_0_STABLE [d034e9b3b] 2014-04-08 14:52:07 +0300
+-->
+
+    <listitem>
+     <para>
+      Don't clear the right-link of a GiST index page while replaying
+      updates from WAL (Heikki Linnakangas)
+     </para>
+
+     <para>
+      This error could lead to transiently wrong answers from GiST index
+      scans performed in Hot Standby.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master Release: REL9_4_BR [c170655cc] 2014-06-09 16:31:11 -0400
+Branch: REL9_3_STABLE [717c116f1] 2014-06-09 16:31:16 -0400
+Branch: REL9_2_STABLE [93328b2df] 2014-06-09 16:30:46 -0400
+-->
+
+    <listitem>
+     <para>
+      Fix corner-case infinite loop during insertion into an SP-GiST text
+      index (Tom Lane)
+     </para>
+    </listitem>
+
+<!--
+Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
+Branch: master [1264ef31a] 2014-07-16 09:19:06 +0300
+Branch: REL9_4_STABLE [9b3ef66af] 2014-07-16 09:20:20 +0300
+Branch: REL9_3_STABLE [a4867d041] 2014-07-16 09:20:31 +0300
+-->
+
+    <listitem>
+     <para>
+      Fix incorrect answers from SP-GiST index searches
+      with <literal>-|-</literal> (range adjacency) operator
+      (Heikki Linnakangas)
+     </para>
+    </listitem>
+
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+Branch: master Release: REL9_4_BR [b0b263baa] 2014-06-09 15:17:23 -0400
+Branch: REL9_3_STABLE [167a2535f] 2014-06-09 15:17:23 -0400
+-->
+
+    <listitem>
+     <para>
+      Fix wraparound handling for <filename>pg_multixact/members</>
+      (&Aacute;lvaro Herrera)
+     </para>
+    </listitem>
+
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+Branch: master [f741300c9] 2014-06-27 14:43:53 -0400
+Branch: REL9_4_STABLE [56f86bb76] 2014-06-27 14:43:52 -0400
+Branch: REL9_3_STABLE [9a28c3752] 2014-06-27 14:43:52 -0400
+-->
+
+    <listitem>
+     <para>
+      Truncate <structname>pg_multixact</> during checkpoints, not
+      during <command>VACUUM</> (&Aacute;lvaro Herrera)
+     </para>
+
+     <para>
+      This change ensures that <structname>pg_multixact</> segments can't be
+      removed if they'd still be needed during WAL replay after a crash.
+     </para>
+    </listitem>
+
+<!--
+Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
+Branch: master Release: REL9_4_BR [2a8e1ac59] 2014-04-17 17:47:50 +0300
+Branch: REL9_3_STABLE [95aa823eb] 2014-04-17 17:47:58 +0300
+-->
+
+    <listitem>
+     <para>
+      Fix possible inconsistency of all-visible flags after WAL recovery
+      (Heikki Linnakangas)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master Release: REL9_4_BR [0f928a85e] 2014-05-05 14:43:39 -0400
+Branch: REL9_3_STABLE [4f4ef042f] 2014-05-05 14:43:42 -0400
+Branch: REL9_2_STABLE [c8fbeeb45] 2014-05-05 14:43:46 -0400
+Branch: REL9_1_STABLE [2f4ee3a2f] 2014-05-05 14:43:49 -0400
+Branch: REL9_0_STABLE [7d5b68621] 2014-05-05 14:43:52 -0400
+Branch: REL8_4_STABLE [3ada1fab8] 2014-05-05 14:43:55 -0400
+-->
+
+    <listitem>
+     <para>
+      Fix possibly-incorrect cache invalidation during nested calls
+      to <function>ReceiveSharedInvalidMessages</> (Andres Freund)
+     </para>
+    </listitem>
+
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+Branch: master Release: REL9_4_BR [1a917ae86] 2014-04-24 15:41:55 -0300
+Branch: REL9_3_STABLE [c0bd128c8] 2014-04-24 15:41:55 -0300
+-->
+
+    <listitem>
+     <para>
+      Fix race condition when updating a tuple concurrently locked by
+      another process (Andres Freund, &Aacute;lvaro Herrera)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: REL9_3_STABLE [a2db7b7d0] 2014-06-26 10:41:59 -0700
+Branch: REL9_2_STABLE [0cf16686b] 2014-06-26 10:42:03 -0700
+Branch: REL9_1_STABLE [555d0b200] 2014-06-26 10:42:08 -0700
+-->
+
+    <listitem>
+     <para>
+      Fix <quote>could not find pathkey item to sort</> planner failures
+      with <literal>UNION ALL</> over subqueries reading from tables with
+      inheritance children (Tom Lane)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [9e2f2d7a0] 2014-07-08 14:03:56 -0400
+Branch: REL9_4_STABLE [ac45aa1dd] 2014-07-08 14:03:45 -0400
+Branch: REL9_3_STABLE [6d36aee5b] 2014-07-08 14:03:19 -0400
+Branch: REL9_2_STABLE [189bd09cb] 2014-07-08 14:03:23 -0400
+Branch: REL9_1_STABLE [fa21a760b] 2014-07-08 14:03:26 -0400
+Branch: REL9_0_STABLE [2865d5952] 2014-07-08 14:03:30 -0400
+Branch: REL8_4_STABLE [2e7469dc8] 2014-07-08 14:03:32 -0400
+-->
+
+    <listitem>
+     <para>
+      Don't assume a subquery's output is unique if there's a set-returning
+      function in its targetlist (David Rowley)
+     </para>
+
+     <para>
+      This oversight could lead to misoptimization of constructs
+      like <literal>WHERE x IN (SELECT y, generate_series(1,10) FROM t GROUP
+      BY y)</literal>.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master Release: REL9_4_BR [95811032d] 2014-04-29 13:12:46 -0400
+Branch: REL9_3_STABLE [150a44e83] 2014-04-29 13:12:29 -0400
+Branch: REL9_2_STABLE [0901dbab3] 2014-04-29 13:12:33 -0400
+-->
+
+    <listitem>
+     <para>
+      Improve planner to drop constant-NULL inputs
+      of <literal>AND</>/<literal>OR</> when possible (Tom Lane)
+     </para>
+
+     <para>
+      This change fixes some cases where the more aggressive parameter
+      substitution done by 9.2 and later can lead to a worse plan than
+      older versions produced.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master Release: REL9_4_BR [c7b353959] 2014-04-03 22:02:24 -0400
+Branch: REL9_3_STABLE [d359f71ac] 2014-04-03 22:02:27 -0400
+-->
+
+    <listitem>
+     <para>
+      Ensure that the planner sees equivalent <literal>VARIADIC</> and
+      non-<literal>VARIADIC</> function calls as equivalent (Tom Lane)
+     </para>
+
+     <para>
+      This bug could for example result in failure to use expression indexes
+      involving variadic functions.  It might be necessary to re-create such
+      indexes, and/or re-create views including variadic function calls that
+      should match the indexes, for the fix to be effective for existing 9.3
+      installations.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [57d8c1270] 2014-06-24 21:22:40 -0700
+Branch: REL9_4_STABLE [a331512de] 2014-06-24 21:22:43 -0700
+Branch: REL9_3_STABLE [a1fc36495] 2014-06-24 21:22:47 -0700
+-->
+
+    <listitem>
+     <para>
+      Fix handling of nested <type>JSON</> objects
+      in <function>json_populate_recordset()</> and friends
+      (Michael Paquier, Tom Lane)
+     </para>
+
+     <para>
+      A nested <type>JSON</> object could result in previous fields of the
+      parent object not being shown in the output.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master Release: REL9_4_BR [0ca6bda8e] 2014-05-09 12:55:31 -0400
+Branch: REL9_3_STABLE [13c679995] 2014-05-09 12:55:03 -0400
+Branch: REL9_2_STABLE [25c933c5c] 2014-05-09 12:55:06 -0400
+-->
+
+    <listitem>
+     <para>
+      Fix identification of input type category in <function>to_json()</>
+      and friends (Tom Lane)
+     </para>
+
+     <para>
+      This is known to have led to inadequate quoting of <type>money</>
+      fields in the <type>JSON</> result, and there may have been wrong
+      results for other data types as well.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master Release: REL9_4_BR [3f8c8e3c6] 2014-05-01 15:19:06 -0400
+Branch: REL9_3_STABLE [b72e90bc3] 2014-05-01 15:19:10 -0400
+Branch: REL9_2_STABLE [8c43980a1] 2014-05-01 15:19:14 -0400
+Branch: REL9_1_STABLE [db1fdc945] 2014-05-01 15:19:17 -0400
+Branch: REL9_0_STABLE [7a4f114f3] 2014-05-01 15:19:20 -0400
+Branch: REL8_4_STABLE [70debcf09] 2014-05-01 15:19:23 -0400
+-->
+
+    <listitem>
+     <para>
+      Fix failure to detoast fields in composite elements of structured
+      types (Tom Lane)
+     </para>
+
+     <para>
+      This corrects cases where TOAST pointers could be copied into other
+      tables without being dereferenced.  If the original data is later
+      deleted, it would lead to errors like <quote>missing chunk number 0
+      for toast value ...</> when the now-dangling pointer is used.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [d68581483] 2014-07-11 19:12:35 -0400
+Branch: REL9_4_STABLE [f280eff94] 2014-07-11 19:12:38 -0400
+Branch: REL9_3_STABLE [b77e6b959] 2014-07-11 19:12:42 -0400
+Branch: REL9_2_STABLE [261f954e7] 2014-07-11 19:12:45 -0400
+Branch: REL9_1_STABLE [c45841f9e] 2014-07-11 19:12:48 -0400
+Branch: REL9_0_STABLE [cd8ba91a0] 2014-07-11 19:12:51 -0400
+Branch: REL8_4_STABLE [a81fbcfb3] 2014-07-11 19:12:56 -0400
+-->
+
+    <listitem>
+     <para>
+      Fix <quote>record type has not been registered</> failures with
+      whole-row references to the output of Append plan nodes (Tom Lane)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master Release: REL9_4_BR [04e5025be] 2014-05-07 14:25:11 -0400
+Branch: REL9_3_STABLE [fc58c39d4] 2014-05-07 14:25:13 -0400
+Branch: REL9_2_STABLE [022b5f2b2] 2014-05-07 14:25:17 -0400
+Branch: REL9_1_STABLE [229101db4] 2014-05-07 14:25:22 -0400
+Branch: REL9_0_STABLE [7f66ade71] 2014-05-07 14:25:25 -0400
+Branch: REL8_4_STABLE [2a527baa3] 2014-05-07 14:25:28 -0400
+-->
+
+    <listitem>
+     <para>
+      Fix possible crash when invoking a user-defined function while
+      rewinding a cursor (Tom Lane)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [45b0f3572] 2014-06-19 22:14:26 -0400
+Branch: REL9_4_STABLE [1044e79a0] 2014-06-19 22:13:44 -0400
+Branch: REL9_3_STABLE [c1f8fb9bf] 2014-06-19 22:13:47 -0400
+Branch: REL9_2_STABLE [b568d3836] 2014-06-19 22:13:51 -0400
+Branch: REL9_1_STABLE [06d5eacbc] 2014-06-19 22:13:54 -0400
+Branch: REL9_0_STABLE [83131e634] 2014-06-19 22:13:58 -0400
+Branch: REL8_4_STABLE [d297c91d4] 2014-06-19 22:14:00 -0400
+-->
+
+    <listitem>
+     <para>
+      Fix query-lifespan memory leak while evaluating the arguments for a
+      function in <literal>FROM</> (Tom Lane)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [1567e659a] 2014-07-18 13:00:27 -0400
+Branch: REL9_4_STABLE [4a66f0f2d] 2014-07-18 13:00:39 -0400
+Branch: REL9_3_STABLE [5ef588b22] 2014-07-18 13:00:43 -0400
+Branch: REL9_2_STABLE [a223b9e36] 2014-07-18 13:00:48 -0400
+Branch: REL9_1_STABLE [8a817785a] 2014-07-18 13:00:52 -0400
+Branch: REL9_0_STABLE [b8c24f7ab] 2014-07-18 13:00:57 -0400
+Branch: REL8_4_STABLE [e0a233744] 2014-07-18 13:01:04 -0400
+-->
+
+    <listitem>
+     <para>
+      Fix session-lifespan memory leaks in regular-expression processing
+      (Tom Lane, Arthur O'Dwyer, Greg Stark)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [fd90b5d57] 2014-06-10 22:48:16 -0400
+Branch: REL9_4_STABLE [7f9fbb842] 2014-06-10 22:48:31 -0400
+Branch: REL9_3_STABLE [87db9534a] 2014-06-10 22:48:39 -0400
+Branch: REL9_2_STABLE [802323535] 2014-06-10 22:48:45 -0400
+Branch: REL9_1_STABLE [62f134954] 2014-06-10 22:48:52 -0400
+Branch: REL9_0_STABLE [4d5ea4290] 2014-06-10 22:48:59 -0400
+Branch: REL8_4_STABLE [f3f40434b] 2014-06-10 22:49:08 -0400
+-->
+
+    <listitem>
+     <para>
+      Fix data encoding error in <filename>hungarian.stop</> (Tom Lane)
+     </para>
+    </listitem>
+
+<!--
+Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
+Branch: master [a87a7dc8b] 2014-06-24 13:27:18 +0300
+Branch: REL9_4_STABLE [1818ae0a7] 2014-06-24 13:31:06 +0300
+Branch: REL9_3_STABLE [2a7512bc7] 2014-06-24 13:31:00 +0300
+Branch: REL9_2_STABLE [1c9f9e888] 2014-06-24 13:30:54 +0300
+Branch: REL9_1_STABLE [dd1a5b09b] 2014-06-24 13:30:41 +0300
+-->
+
+    <listitem>
+     <para>
+      Prevent foreign tables from being created with OIDS
+      when <xref linkend="guc-default-with-oids"> is true
+      (Etsuro Fujita)
+     </para>
+    </listitem>
+
+<!--
+Author: Andres Freund <andres@anarazel.de>
+Branch: master Release: REL9_4_BR [621a99a66] 2014-06-04 21:36:19 +0200
+Branch: REL9_3_STABLE [edde59db1] 2014-06-04 23:26:08 +0200
+Branch: REL9_2_STABLE [315442c01] 2014-06-04 23:25:52 +0200
+Branch: REL9_1_STABLE [6bf6e528a] 2014-06-04 23:26:30 +0200
+Branch: REL9_0_STABLE [037c6fb9f] 2014-06-04 23:27:10 +0200
+Branch: REL8_4_STABLE [80d45ae4e] 2014-06-04 23:27:38 +0200
+-->
+
+    <listitem>
+     <para>
+      Fix liveness checks for rows that were inserted in the current
+      transaction and then deleted by a now-rolled-back subtransaction
+      (Andres Freund)
+     </para>
+
+     <para>
+      This could cause problems (at least spurious warnings, and at worst an
+      infinite loop) if <command>CREATE INDEX</> or <command>CLUSTER</> were
+      done later in the same transaction.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master Release: REL9_4_BR [d19bd29f0] 2014-04-24 13:29:48 -0400
+Branch: REL9_3_STABLE [12e41a5d7] 2014-04-24 13:29:56 -0400
+Branch: REL9_2_STABLE [ea9ac7741] 2014-04-24 13:30:00 -0400
+Branch: REL9_1_STABLE [70e7be264] 2014-04-24 13:30:04 -0400
+Branch: REL9_0_STABLE [b7a3e1173] 2014-04-24 13:30:08 -0400
+Branch: REL8_4_STABLE [82fbd88a7] 2014-04-24 13:30:14 -0400
+-->
+
+    <listitem>
+     <para>
+      Clear <structname>pg_stat_activity</>.<structfield>xact_start</>
+      during <command>PREPARE TRANSACTION</> (Andres Freund)
+     </para>
+
+     <para>
+      After the <command>PREPARE</>, the originating session is no longer in
+      a transaction, so it should not continue to display a transaction
+      start time.
+     </para>
+    </listitem>
+
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+Branch: master [6bdf4b9c7] 2014-07-15 13:24:07 -0400
+Branch: REL9_4_STABLE [e45229bb6] 2014-07-15 13:24:07 -0400
+Branch: REL9_3_STABLE [12c5bbdcb] 2014-07-15 13:24:07 -0400
+Branch: REL9_2_STABLE [b42f09fc8] 2014-07-15 13:24:07 -0400
+Branch: REL9_1_STABLE [a41dc7321] 2014-07-15 13:24:07 -0400
+Branch: REL9_0_STABLE [bf08864b8] 2014-07-15 13:24:07 -0400
+Branch: REL8_4_STABLE [4b767789d] 2014-07-15 13:24:07 -0400
+-->
+
+    <listitem>
+     <para>
+      Fix <command>REASSIGN OWNED</> to not fail for text search objects
+      (&Aacute;lvaro Herrera)
+     </para>
+    </listitem>
+
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+Branch: master [b7e51d9c0] 2014-06-27 14:43:46 -0400
+Branch: REL9_4_STABLE [9eecc8a7c] 2014-06-27 14:43:46 -0400
+Branch: REL9_3_STABLE [e86cfc4bb] 2014-06-27 14:43:45 -0400
+-->
+
+    <listitem>
+     <para>
+      Prevent <structname>pg_class</>.<structfield>relminmxid</> values from
+      going backwards during <command>VACUUM FULL</> (&Aacute;lvaro Herrera)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master Release: REL9_4_BR [41de93c53] 2014-04-30 13:26:26 -0400
+Branch: REL9_3_STABLE [0652d77fb] 2014-04-30 13:26:29 -0400
+-->
+
+    <listitem>
+     <para>
+      Reduce indentation in rule/view dumps to improve readability and avoid
+      excessive whitespace (Greg Stark, Tom Lane)
+     </para>
+
+     <para>
+      This change reduces the amount of indentation applied to nested
+      constructs, including some cases that the user probably doesn't think
+      of as nested, such as UNION lists.  Previously, deeply nested
+      constructs were printed with an amount of whitespace growing as
+      O(N^2), which created a performance problem and even risk of
+      out-of-memory failures.  Now the indentation is reduced modulo 40,
+      which is initially odd to look at but seems to preserve readability
+      better than simply limiting the indentation would do.
+      Redundant parenthesization of UNION lists has been reduced as well.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master Release: REL9_4_BR [91e16b980] 2014-05-01 20:22:37 -0400
+Branch: REL9_3_STABLE [e31193d49] 2014-05-01 20:22:39 -0400
+-->
+
+    <listitem>
+     <para>
+      Fix dumping of rules/views when subsequent addition of a column has
+      resulted in multiple input columns matching a <literal>USING</>
+      specification (Tom Lane)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [9b35ddce9] 2014-07-19 14:28:52 -0400
+Branch: REL9_4_STABLE [f0a497e4c] 2014-07-19 14:29:00 -0400
+Branch: REL9_3_STABLE [b978ab5f6] 2014-07-19 14:29:05 -0400
+-->
+
+    <listitem>
+     <para>
+      Repair view printing for some cases involving functions
+      in <literal>FROM</> that return a composite type containing dropped
+      columns (Tom Lane)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master Release: REL9_4_BR [5d8117e1f] 2014-04-05 18:16:08 -0400
+Branch: REL9_3_STABLE [21aa47d01] 2014-04-05 18:16:11 -0400
+Branch: REL9_2_STABLE [53463e247] 2014-04-05 18:16:14 -0400
+Branch: REL9_1_STABLE [093d3da1d] 2014-04-05 18:16:17 -0400
+Branch: REL9_0_STABLE [5c26ab659] 2014-04-05 18:16:20 -0400
+Branch: REL8_4_STABLE [969735cf1] 2014-04-05 18:16:24 -0400
+-->
+
+    <listitem>
+     <para>
+      Block signals during postmaster startup (Tom Lane)
+     </para>
+
+     <para>
+      This ensures that the postmaster will properly clean up after itself
+      if, for example, it receives <systemitem>SIGINT</> while still
+      starting up.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master Release: REL9_4_BR [fc752505a] 2014-04-02 17:11:24 -0400
+Branch: REL9_3_STABLE [65183fb78] 2014-04-02 17:11:27 -0400
+Branch: REL9_2_STABLE [029decfec] 2014-04-02 17:11:31 -0400
+Branch: REL9_1_STABLE [b7a424371] 2014-04-02 17:11:34 -0400
+-->
+
+    <listitem>
+     <para>
+      Fix client host name lookup when processing <filename>pg_hba.conf</>
+      entries that specify host names instead of IP addresses (Tom Lane)
+     </para>
+
+     <para>
+      Ensure that reverse-DNS lookup failures are reported, instead of just
+      silently not matching such entries.  Also ensure that we make only
+      one reverse-DNS lookup attempt per connection, not one per host name
+      entry, which is what previously happened if the lookup attempts failed.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master Release: REL9_4_BR [b203c57bb] 2014-04-04 22:03:35 -0400
+Branch: REL9_3_STABLE [7d1a0f585] 2014-04-04 22:03:38 -0400
+Branch: REL9_2_STABLE [6d25eb314] 2014-04-04 22:03:42 -0400
+-->
+
+    <listitem>
+     <para>
+      Allow the root user to use <literal>postgres -C variable</> and
+      <literal>postgres --describe-config</> (MauMau)
+     </para>
+
+     <para>
+      The prohibition on starting the server as root does not need to extend
+      to these operations, and relaxing it prevents failure
+      of <application>pg_ctl</> in some scenarios.
+     </para>
+    </listitem>
+
+<!--
+Author: Noah Misch <noah@leadboat.com>
+Branch: master [be76a6d39] 2014-06-14 09:41:13 -0400
+Branch: REL9_4_STABLE [6583a75b2] 2014-06-14 09:41:16 -0400
+Branch: REL9_3_STABLE [1442b426e] 2014-06-14 09:41:17 -0400
+Branch: REL9_2_STABLE [453a5d91d] 2014-06-14 09:41:17 -0400
+Branch: REL9_1_STABLE [481831b43] 2014-06-14 09:41:18 -0400
+Branch: REL9_0_STABLE [5f09c583c] 2014-06-14 09:41:18 -0400
+Branch: REL8_4_STABLE [95cefd30e] 2014-06-14 09:41:18 -0400
+-->
+
+    <listitem>
+     <para>
+      Secure Unix-domain sockets of temporary postmasters started during
+      <literal>make check</> (Noah Misch)
+     </para>
+
+     <para>
+      Any local user able to access the socket file could connect as the
+      server's bootstrap superuser, then proceed to execute arbitrary code as
+      the operating-system user running the test, as we previously noted in
+      CVE-2014-0067.  This change defends against that risk by placing the
+      server's socket in a temporary, mode 0700 subdirectory
+      of <filename>/tmp</>.  The hazard remains however on platforms where
+      Unix sockets are not supported, notably Windows, because then the
+      temporary postmaster must accept local TCP connections.
+     </para>
+
+     <para>
+      A useful side effect of this change is to simplify
+      <literal>make check</> testing in builds that
+      override <literal>DEFAULT_PGSOCKET_DIR</>.  Popular non-default values
+      like <filename>/var/run/postgresql</> are often not writable by the
+      build user, requiring workarounds that will no longer be necessary.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master Release: REL9_4_BR [abe075dff] 2014-04-04 23:09:35 -0400
+Branch: REL9_3_STABLE [84520f91c] 2014-04-04 23:09:38 -0400
+Branch: REL9_2_STABLE [1a496a12b] 2014-04-04 23:09:41 -0400
+Branch: REL9_1_STABLE [af7738fe6] 2014-04-04 23:09:45 -0400
+Branch: REL9_0_STABLE [634056567] 2014-04-04 23:09:49 -0400
+-->
+
+    <listitem>
+     <para>
+      Fix tablespace creation WAL replay to work on Windows (MauMau)
+     </para>
+    </listitem>
+
+<!--
+Author: Bruce Momjian <bruce@momjian.us>
+Branch: master Release: REL9_4_BR [418093465] 2014-04-16 10:45:48 -0400
+Branch: REL9_3_STABLE [f716c3250] 2014-04-16 10:45:48 -0400
+Branch: REL9_2_STABLE [966f015b6] 2014-04-16 10:45:48 -0400
+Branch: REL9_1_STABLE [bed499ed1] 2014-04-16 10:45:48 -0400
+Branch: REL9_0_STABLE [a86b2daff] 2014-04-16 10:45:48 -0400
+-->
+
+    <listitem>
+     <para>
+      Fix detection of socket creation failures on Windows (Bruce Momjian)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master Release: REL9_4_BR [6862ca697] 2014-04-05 12:41:25 -0400
+Branch: REL9_3_STABLE [18db2150c] 2014-04-05 12:41:28 -0400
+Branch: REL9_2_STABLE [bdc3e95c2] 2014-04-05 12:41:31 -0400
+Branch: REL9_1_STABLE [cb11f4d8d] 2014-04-05 12:41:34 -0400
+Branch: REL9_0_STABLE [9500d8f89] 2014-04-05 12:41:38 -0400
+Branch: REL8_4_STABLE [30e434bdf] 2014-04-05 12:41:40 -0400
+-->
+
+    <listitem>
+     <para>
+      On Windows, allow new sessions to absorb values of PGC_BACKEND
+      parameters (such as <xref linkend="guc-log-connections">) from the
+      configuration file (Amit Kapila)
+     </para>
+
+     <para>
+      Previously, if such a parameter were changed in the file post-startup,
+      the change would have no effect.
+     </para>
+    </listitem>
+
+<!--
+Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
+Branch: master Release: REL9_4_BR [503de5462] 2014-04-30 10:35:52 +0300
+Branch: REL9_3_STABLE [8a90a39b4] 2014-04-30 10:35:46 +0300
+Branch: REL9_2_STABLE [e2558e016] 2014-04-30 10:36:31 +0300
+Branch: REL9_1_STABLE [94095e341] 2014-04-30 10:36:41 +0300
+Branch: REL9_0_STABLE [c06b7219a] 2014-04-30 10:38:32 +0300
+Branch: REL8_4_STABLE [e3f273ff6] 2014-04-30 10:39:03 +0300
+-->
+
+    <listitem>
+     <para>
+      Properly quote executable path names on Windows (Nikhil Deshpande)
+     </para>
+
+     <para>
+      This oversight could cause <application>initdb</>
+      and <application>pg_upgrade</> to fail on Windows, if the installation
+      path contained both spaces and <literal>@</> signs.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master Release: REL9_4_BR [20561acf9] 2014-05-30 18:19:06 -0400
+Branch: REL9_3_STABLE [4f5f4da79] 2014-05-30 18:19:14 -0400
+Branch: REL9_2_STABLE [83ed4598b] 2014-05-30 18:18:20 -0400
+Branch: REL9_1_STABLE [a784a39c4] 2014-05-30 18:18:24 -0400
+Branch: REL9_0_STABLE [4f725bbc4] 2014-05-30 18:18:28 -0400
+Branch: REL8_4_STABLE [ae41bb4be] 2014-05-30 18:18:32 -0400
+-->
+
+    <listitem>
+     <para>
+      Fix linking of <application>libpython</> on OS X (Tom Lane)
+     </para>
+
+     <para>
+      The method we previously used can fail with the Python library
+      supplied by Xcode 5.0 and later.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master Release: REL9_4_BR [2f557167b] 2014-05-07 21:39:13 -0400
+Branch: REL9_3_STABLE [b4f9c93ce] 2014-05-07 21:38:38 -0400
+Branch: REL9_2_STABLE [f7672c8ce] 2014-05-07 21:38:41 -0400
+Branch: REL9_1_STABLE [86888054a] 2014-05-07 21:38:44 -0400
+Branch: REL9_0_STABLE [77e662827] 2014-05-07 21:38:47 -0400
+Branch: REL8_4_STABLE [664ac3de7] 2014-05-07 21:38:50 -0400
+-->
+
+    <listitem>
+     <para>
+      Avoid buffer bloat in <application>libpq</> when the server
+      consistently sends data faster than the client can absorb it
+      (Shin-ichi Morita, Tom Lane)
+     </para>
+
+     <para>
+      <application>libpq</> could be coerced into enlarging its input buffer
+      until it runs out of memory (which would be reported misleadingly
+      as <quote>lost synchronization with server</>).  Under ordinary
+      circumstances it's quite far-fetched that data could be continuously
+      transmitted more quickly than the <function>recv()</> loop can
+      absorb it, but this has been observed when the client is artificially
+      slowed by scheduler constraints.
+     </para>
+    </listitem>
+
+<!--
+Author: Magnus Hagander <magnus@hagander.net>
+Branch: master Release: REL9_4_BR [585bca393] 2014-04-16 18:58:10 +0200
+Branch: REL9_3_STABLE [cc269272c] 2014-04-16 18:58:55 +0200
+Branch: REL9_2_STABLE [b764080ee] 2014-04-16 18:59:11 +0200
+Branch: REL9_1_STABLE [c4bf15b9c] 2014-04-16 18:59:28 +0200
+Branch: REL9_0_STABLE [96752b02d] 2014-04-16 18:59:37 +0200
+Branch: REL8_4_STABLE [b4ae2e37d] 2014-04-16 18:59:48 +0200
+-->
+
+    <listitem>
+     <para>
+      Ensure that LDAP lookup attempts in <application>libpq</> time out as
+      intended (Laurenz Albe)
+     </para>
+    </listitem>
+
+<!--
+Author: Michael Meskes <meskes@postgresql.org>
+Branch: master Release: REL9_4_BR [8d6a07fa0] 2014-05-06 13:09:51 +0200
+Branch: REL9_3_STABLE [b4eeb9d58] 2014-05-06 13:04:30 +0200
+Branch: REL9_2_STABLE [3a024c110] 2014-05-06 13:14:01 +0200
+Branch: REL9_1_STABLE [fb66e88cf] 2014-05-06 13:20:22 +0200
+Branch: REL9_0_STABLE [91c8c106f] 2014-05-06 13:24:13 +0200
+
+Author: Michael Meskes <meskes@postgresql.org>
+Branch: master Release: REL9_4_BR [f91796853] 2014-04-09 11:23:38 +0200
+Branch: REL9_3_STABLE [3b8fda676] 2014-04-09 11:38:40 +0200
+Branch: REL9_2_STABLE [2b3136de9] 2014-04-09 11:43:13 +0200
+Branch: REL9_1_STABLE [0de106836] 2014-04-09 12:04:33 +0200
+Branch: REL9_0_STABLE [0c2eb989e] 2014-04-09 12:12:32 +0200
+-->
+
+    <listitem>
+     <para>
+      Fix <application>ecpg</> to do the right thing when an array
+      of <type>char *</> is the target for a FETCH statement returning more
+      than one row, as well as some other array-handling fixes
+      (Ashutosh Bapat)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master Release: REL9_4_BR [62215de29] 2014-03-29 17:34:00 -0400
+Branch: REL9_3_STABLE [3080bbaa9] 2014-03-29 17:34:03 -0400
+-->
+
+    <listitem>
+     <para>
+      Fix <application>pg_dump</> to cope with a materialized view that
+      depends on a table's primary key (Tom Lane)
+     </para>
+
+     <para>
+      This occurs if the view's query relies on functional dependency to
+      abbreviate a <literal>GROUP BY</> list.  <application>pg_dump</> got
+      sufficiently confused that it dumped the materialized view as a
+      regular view.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master Release: REL9_4_BR [19f2d6cda] 2014-03-18 10:38:25 -0400
+Branch: REL9_3_STABLE [63817f86b] 2014-03-18 10:38:38 -0400
+-->
+
+    <listitem>
+     <para>
+      Fix parsing of <application>pg_dumpall</>'s <option>-i</> switch
+      (Tom Lane)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [c81e63d85] 2014-06-12 20:14:32 -0400
+Branch: REL9_4_STABLE [c3c1401ca] 2014-06-12 20:14:36 -0400
+Branch: REL9_3_STABLE [a11577f47] 2014-06-12 20:14:39 -0400
+Branch: REL9_2_STABLE [ce7fc4fbb] 2014-06-12 20:14:46 -0400
+Branch: REL9_1_STABLE [294a48985] 2014-06-12 20:14:49 -0400
+Branch: REL9_0_STABLE [3fec825f9] 2014-06-12 20:14:52 -0400
+Branch: REL8_4_STABLE [6adddac8a] 2014-06-12 20:14:55 -0400
+-->
+
+    <listitem>
+     <para>
+      Fix <application>pg_restore</>'s processing of old-style large object
+      comments (Tom Lane)
+     </para>
+
+     <para>
+      A direct-to-database restore from an archive file generated by a
+      pre-9.0 version of <application>pg_dump</> would usually fail if the
+      archive contained more than a few comments for large objects.
+     </para>
+    </listitem>
+
+<!--
+Author: Bruce Momjian <bruce@momjian.us>
+Branch: master [3088cc370] 2014-07-07 13:24:08 -0400
+Branch: REL9_4_STABLE [f64fe2cbe] 2014-07-07 13:24:08 -0400
+Branch: REL9_3_STABLE [f1d7ff5bb] 2014-07-07 13:24:08 -0400
+Branch: REL9_2_STABLE [759c9fb63] 2014-07-07 13:24:08 -0400
+-->
+
+    <listitem>
+     <para>
+      Fix <application>pg_upgrade</> for cases where the new server creates
+      a TOAST table but the old version did not (Bruce Momjian)
+     </para>
+
+     <para>
+      This rare situation would manifest as <quote>relation OID mismatch</>
+      errors.
+     </para>
+    </listitem>
+
+<!--
+Author: Bruce Momjian <bruce@momjian.us>
+Branch: master [a61daa14d] 2014-07-02 15:29:38 -0400
+Branch: REL9_4_STABLE [b446a384b] 2014-07-02 15:29:38 -0400
+Branch: REL9_3_STABLE [3d2e18510] 2014-07-02 15:29:38 -0400
+
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [78db307bb] 2014-07-21 11:41:53 -0400
+Branch: REL9_4_STABLE [d122387d7] 2014-07-21 11:42:00 -0400
+Branch: REL9_3_STABLE [e7984cca0] 2014-07-21 11:42:05 -0400
+-->
+
+    <listitem>
+     <para>
+      In <application>pg_upgrade</>,
+      preserve <structname>pg_database</>.<structfield>datminmxid</>
+      and <structname>pg_class</>.<structfield>relminmxid</> values from the
+      old cluster, or insert reasonable values when upgrading from pre-9.3;
+      also defend against unreasonable values in the core server
+      (Bruce Momjian, &Aacute;lvaro Herrera, Tom Lane)
+     </para>
+
+     <para>
+      These changes prevent scenarios in which autovacuum might insist on
+      scanning the entire cluster's contents immediately upon starting the
+      new cluster, or in which tracking of unfrozen MXID values might be
+      disabled completely.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master Release: REL9_4_BR [e416830a2] 2014-05-20 12:20:47 -0400
+Branch: REL9_3_STABLE [0266a9c78] 2014-05-20 12:20:52 -0400
+Branch: REL9_2_STABLE [31f579f09] 2014-05-20 12:20:57 -0400
+-->
+
+    <listitem>
+     <para>
+      Prevent <filename>contrib/auto_explain</> from changing the output of
+      a user's <command>EXPLAIN</> (Tom Lane)
+     </para>
+
+     <para>
+      If <filename>auto_explain</> is active, it could cause
+      an <literal>EXPLAIN (ANALYZE, TIMING OFF)</> command to nonetheless
+      print timing information.
+     </para>
+    </listitem>
+
+<!--
+Author: Joe Conway <mail@joeconway.com>
+Branch: master [1dde5782e] 2014-06-20 12:24:59 -0700
+Branch: REL9_4_STABLE [9d884a34c] 2014-06-20 12:26:26 -0700
+Branch: REL9_3_STABLE [b3a3f3d2f] 2014-06-20 12:26:43 -0700
+Branch: REL9_2_STABLE [3e2cfa42f] 2014-06-20 12:27:04 -0700
+-->
+
+    <listitem>
+     <para>
+      Fix query-lifespan memory leak in <filename>contrib/dblink</>
+      (MauMau, Joe Conway)
+     </para>
+    </listitem>
+
+<!--
+Author: Bruce Momjian <bruce@momjian.us>
+Branch: master Release: REL9_4_BR [9fe55259f] 2014-04-17 12:37:53 -0400
+Branch: REL9_3_STABLE [fc72e94a1] 2014-04-17 12:37:53 -0400
+Branch: REL9_2_STABLE [ea8725a8b] 2014-04-17 12:37:53 -0400
+Branch: REL9_1_STABLE [fc02b87e2] 2014-04-17 12:37:53 -0400
+Branch: REL9_0_STABLE [a1b9c4630] 2014-04-17 12:37:53 -0400
+Branch: REL8_4_STABLE [df2e62603] 2014-04-17 12:37:53 -0400
+-->
+
+    <listitem>
+     <para>
+      In <filename>contrib/pgcrypto</> functions, ensure sensitive
+      information is cleared from stack variables before returning
+      (Marko Kreen)
+     </para>
+    </listitem>
+
+<!--
+Author: Noah Misch <noah@leadboat.com>
+Branch: master [9d0826c59] 2014-06-30 16:59:19 -0400
+Branch: REL9_4_STABLE [37a4d3d70] 2014-06-30 16:59:44 -0400
+Branch: REL9_3_STABLE [f14e40852] 2014-06-30 17:00:22 -0400
+Branch: REL9_2_STABLE [f6d6b7b1e] 2014-06-30 17:00:40 -0400
+-->
+
+    <listitem>
+     <para>
+      Prevent use of already-freed memory in
+      <filename>contrib/pgstattuple</>'s <function>pgstat_heap()</>
+      (Noah Misch)
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master Release: REL9_4_BR [c941aed96] 2014-05-29 13:51:02 -0400
+Branch: REL9_3_STABLE [961dd203a] 2014-05-29 13:51:05 -0400
+Branch: REL9_2_STABLE [2fb9fb661] 2014-05-29 13:51:09 -0400
+Branch: REL9_1_STABLE [3606754da] 2014-05-29 13:51:12 -0400
+Branch: REL9_0_STABLE [b2f6754d2] 2014-05-29 13:51:15 -0400
+Branch: REL8_4_STABLE [fd785441f] 2014-05-29 13:51:18 -0400
+-->
+
+    <listitem>
+     <para>
+      In <filename>contrib/uuid-ossp</>, cache the state of the OSSP UUID
+      library across calls (Tom Lane)
+     </para>
+
+     <para>
+      This improves the efficiency of UUID generation and reduces the amount
+      of entropy drawn from <filename>/dev/urandom</>, on platforms that
+      have that.
+     </para>
+    </listitem>
+
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+Branch: master [b1864fabf] 2014-07-19 15:00:50 -0400
+Branch: REL9_4_STABLE [e5ea60e80] 2014-07-19 15:01:05 -0400
+Branch: REL9_3_STABLE [bd5458f52] 2014-07-19 15:01:12 -0400
+Branch: REL9_2_STABLE [7d09e4854] 2014-07-19 15:01:18 -0400
+Branch: REL9_1_STABLE [40ccb6530] 2014-07-19 15:01:28 -0400
+Branch: REL9_0_STABLE [7659b6913] 2014-07-19 15:01:38 -0400
+Branch: REL8_4_STABLE [c51da696b] 2014-07-19 15:01:45 -0400
+-->
+
+    <listitem>
+     <para>
+      Update time zone data files to <application>tzdata</> release 2014e
+      for DST law changes in Crimea, Egypt, and Morocco.
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
  <sect1 id="release-9-3-4">
   <title>Release 9.3.4</title>
 
@@ -456,9 +1576,6 @@ Branch: REL8_4_STABLE [6e6c2c2e1] 2014-03-15 13:36:57 -0400
       for DST law changes in Fiji and Turkey, plus historical changes in
       Israel and Ukraine.
      </para>
-
-     <para>
-     </para>
     </listitem>
 
    </itemizedlist>
@@ -1646,9 +2763,6 @@ Branch: REL9_2_STABLE [fa28f9cba] 2014-01-04 16:05:23 -0500
       some <application>psql</> <literal>\d</> commands
       (Peter Eisentraut, Tom Lane)
      </para>
-
-     <para>
-     </para>
     </listitem>
 
 <!--