]> granicus.if.org Git - postgresql/commitdiff
Update release notes for 9.2.4, 9.1.9, 9.0.13, 8.4.17.
authorTom Lane <tgl@sss.pgh.pa.us>
Mon, 1 Apr 2013 18:11:16 +0000 (14:11 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Mon, 1 Apr 2013 18:11:16 +0000 (14:11 -0400)
Security: CVE-2013-1899, CVE-2013-1901

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

index 03f31e63a84a94123175c49cd3ac3edf772539a3..506743cd2dc0b9e4985b9c02c145bb2cda01aa20 100644 (file)
@@ -1,6 +1,235 @@
 <!-- doc/src/sgml/release-8.4.sgml -->
 <!-- See header comment in release.sgml about typical markup -->
 
+ <sect1 id="release-8-4-17">
+  <title>Release 8.4.17</title>
+
+  <note>
+  <title>Release Date</title>
+  <simpara>2013-04-04</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 8.4.16.
+   For information about new features in the 8.4 major release, see
+   <xref linkend="release-8-4">.
+  </para>
+
+  <sect2>
+   <title>Migration to Version 8.4.17</title>
+
+   <para>
+    A dump/restore is not required for those running 8.4.X.
+   </para>
+
+   <para>
+    However, this release corrects several errors in management of GiST
+    indexes.  After installing this update, it is advisable to
+    <command>REINDEX</> any GiST indexes that meet one or more of the
+    conditions described below.
+   </para>
+
+   <para>
+    Also, if you are upgrading from a version earlier than 8.4.10,
+    see the release notes for 8.4.10.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Changes</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Reset OpenSSL randomness state in each postmaster child process
+      (Marko Kreen)
+     </para>
+
+     <para>
+      This avoids a scenario wherein random numbers generated by
+      <filename>contrib/pgcrypto</> functions might be relatively easy for
+      another database user to guess.  The risk is only significant when
+      the postmaster is configured with <varname>ssl</> = <literal>on</>
+      but most connections don't use SSL encryption.  (CVE-2013-1900)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix GiST indexes to not use <quote>fuzzy</> geometric comparisons when
+      it's not appropriate to do so (Alexander Korotkov)
+     </para>
+
+     <para>
+      The core geometric types perform comparisons using <quote>fuzzy</>
+      equality, but <function>gist_box_same</> must do exact comparisons,
+      else GiST indexes using it might become inconsistent.  After installing
+      this update, users should <command>REINDEX</> any GiST indexes on
+      <type>box</>, <type>polygon</>, <type>circle</>, or <type>point</>
+      columns, since all of these use <function>gist_box_same</>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix erroneous range-union and penalty logic in GiST indexes that use
+      <filename>contrib/btree_gist</> for variable-width data types, that is
+      <type>text</>, <type>bytea</>, <type>bit</>, and <type>numeric</>
+      columns (Tom Lane)
+     </para>
+
+     <para>
+      These errors could result in inconsistent indexes in which some keys
+      that are present would not be found by searches, and also in useless
+      index bloat.  Users are advised to <command>REINDEX</> such indexes
+      after installing this update.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix bugs in GiST page splitting code for multi-column indexes
+      (Tom Lane)
+     </para>
+
+     <para>
+      These errors could result in inconsistent indexes in which some keys
+      that are present would not be found by searches, and also in indexes
+      that are unnecessarily inefficient to search.  Users are advised to
+      <command>REINDEX</> multi-column GiST indexes after installing this
+      update.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix infinite-loop risk in regular expression compilation (Tom Lane,
+      Don Porter)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix potential null-pointer dereference in regular expression compilation
+      (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <function>to_char()</> to use ASCII-only case-folding rules where
+      appropriate (Tom Lane)
+     </para>
+
+     <para>
+      This fixes misbehavior of some template patterns that should be
+      locale-independent, but mishandled <quote><literal>I</></quote> and
+      <quote><literal>i</></quote> in Turkish locales.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix unwanted rejection of timestamp <literal>1999-12-31 24:00:00</>
+      (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Remove useless <quote>picksplit doesn't support secondary split</> log
+      messages (Josh Hansen, Tom Lane)
+     </para>
+
+     <para>
+      This message seems to have been added in expectation of code that was
+      never written, and probably never will be, since GiST's default
+      handling of secondary splits is actually pretty good.  So stop nagging
+      end users about it.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible failure to send a session's last few transaction
+      commit/abort counts to the statistics collector (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Eliminate memory leaks in PL/Perl's <function>spi_prepare()</> function
+      (Alex Hunsaker, Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <application>pg_dumpall</> to handle database names containing
+      <quote><literal>=</></quote> correctly (Heikki Linnakangas)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Avoid crash in <application>pg_dump</> when an incorrect connection
+      string is given (Heikki Linnakangas)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ignore invalid indexes in <application>pg_dump</> (Michael Paquier)
+     </para>
+
+     <para>
+      Dumping invalid indexes can cause problems at restore time, for example
+      if the reason the index creation failed was because it tried to enforce
+      a uniqueness condition not satisfied by the table's data.  Also, if the
+      index creation is in fact still in progress, it seems reasonable to
+      consider it to be an uncommitted DDL change, which
+      <application>pg_dump</> wouldn't be expected to dump anyway.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <filename>contrib/pg_trgm</>'s <function>similarity()</> function
+      to return zero for trigram-less strings (Tom Lane)
+     </para>
+
+     <para>
+      Previously it returned <literal>NaN</> due to internal division by zero.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Update time zone data files to <application>tzdata</> release 2013b
+      for DST law changes in Chile, Haiti, Morocco, Paraguay, and some
+      Russian areas.  Also, historical zone data corrections for numerous
+      places.
+     </para>
+
+     <para>
+      Also, update the time zone abbreviation files for recent changes in
+      Russia and elsewhere: <literal>CHOT</>, <literal>GET</>,
+      <literal>IRKT</>, <literal>KGT</>, <literal>KRAT</>, <literal>MAGT</>,
+      <literal>MAWT</>, <literal>MSK</>, <literal>NOVT</>, <literal>OMST</>,
+      <literal>TKT</>, <literal>VLAT</>, <literal>WST</>, <literal>YAKT</>,
+      <literal>YEKT</> now follow their current meanings, and
+      <literal>VOLT</> (Europe/Volgograd) and <literal>MIST</>
+      (Antarctica/Macquarie) are added to the default abbreviations list.
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
  <sect1 id="release-8-4-16">
   <title>Release 8.4.16</title>
 
      </para>
 
      <para>
-      The main consequence of this mistake is that lowering <link
+      In installations that have existed for more than <link
       linkend="guc-vacuum-freeze-min-age"><varname>vacuum_freeze_min_age</></link>
-      would cause full-table vacuuming scans to occur much more frequently
-      than intended.
+      transactions, this mistake prevented autovacuum from using partial-table
+      scans, so that a full-table scan would always happen instead.
      </para>
     </listitem>
 
index f3340abc7e613c95f18ec23ee0b877349ea15ea9..d68d5801d439bff598d8b50e4850363ac6efec9f 100644 (file)
@@ -1,6 +1,303 @@
 <!-- doc/src/sgml/release-9.0.sgml -->
 <!-- See header comment in release.sgml about typical markup -->
 
+ <sect1 id="release-9-0-13">
+  <title>Release 9.0.13</title>
+
+  <note>
+  <title>Release Date</title>
+  <simpara>2013-04-04</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 9.0.12.
+   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.13</title>
+
+   <para>
+    A dump/restore is not required for those running 9.0.X.
+   </para>
+
+   <para>
+    However, this release corrects several errors in management of GiST
+    indexes.  After installing this update, it is advisable to
+    <command>REINDEX</> any GiST indexes that meet one or more of the
+    conditions described below.
+   </para>
+
+   <para>
+    Also, if you are upgrading from a version earlier than 9.0.6,
+    see the release notes for 9.0.6.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Changes</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Fix insecure parsing of server command-line switches (Mitsumasa
+      Kondo, Kyotaro Horiguchi)
+     </para>
+
+     <para>
+      A connection request containing a database name that begins with
+      <quote><literal>-</></quote> could be crafted to damage or destroy
+      files within the server's data directory, even if the request is
+      eventually rejected.  (CVE-2013-1899)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Reset OpenSSL randomness state in each postmaster child process
+      (Marko Kreen)
+     </para>
+
+     <para>
+      This avoids a scenario wherein random numbers generated by
+      <filename>contrib/pgcrypto</> functions might be relatively easy for
+      another database user to guess.  The risk is only significant when
+      the postmaster is configured with <varname>ssl</> = <literal>on</>
+      but most connections don't use SSL encryption.  (CVE-2013-1900)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix GiST indexes to not use <quote>fuzzy</> geometric comparisons when
+      it's not appropriate to do so (Alexander Korotkov)
+     </para>
+
+     <para>
+      The core geometric types perform comparisons using <quote>fuzzy</>
+      equality, but <function>gist_box_same</> must do exact comparisons,
+      else GiST indexes using it might become inconsistent.  After installing
+      this update, users should <command>REINDEX</> any GiST indexes on
+      <type>box</>, <type>polygon</>, <type>circle</>, or <type>point</>
+      columns, since all of these use <function>gist_box_same</>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix erroneous range-union and penalty logic in GiST indexes that use
+      <filename>contrib/btree_gist</> for variable-width data types, that is
+      <type>text</>, <type>bytea</>, <type>bit</>, and <type>numeric</>
+      columns (Tom Lane)
+     </para>
+
+     <para>
+      These errors could result in inconsistent indexes in which some keys
+      that are present would not be found by searches, and also in useless
+      index bloat.  Users are advised to <command>REINDEX</> such indexes
+      after installing this update.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix bugs in GiST page splitting code for multi-column indexes
+      (Tom Lane)
+     </para>
+
+     <para>
+      These errors could result in inconsistent indexes in which some keys
+      that are present would not be found by searches, and also in indexes
+      that are unnecessarily inefficient to search.  Users are advised to
+      <command>REINDEX</> multi-column GiST indexes after installing this
+      update.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <function>gist_point_consistent</>
+      to handle fuzziness consistently (Alexander Korotkov)
+     </para>
+
+     <para>
+      Index scans on GiST indexes on <type>point</> columns would sometimes
+      yield results different from a sequential scan, because
+      <function>gist_point_consistent</> disagreed with the underlying
+      operator code about whether to do comparisons exactly or fuzzily.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix buffer leak in WAL replay (Heikki Linnakangas)
+     </para>
+
+     <para>
+      This bug could result in <quote>incorrect local pin count</> errors
+      during replay, making recovery impossible.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix race condition in <command>DELETE RETURNING</> (Tom Lane)
+     </para>
+
+     <para>
+      Under the right circumstances, <command>DELETE RETURNING</> could
+      attempt to fetch data from a shared buffer that the current process
+      no longer has any pin on.  If some other process changed the buffer
+      meanwhile, this would lead to garbage <literal>RETURNING</> output, or
+      even a crash.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix infinite-loop risk in regular expression compilation (Tom Lane,
+      Don Porter)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix potential null-pointer dereference in regular expression compilation
+      (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <function>to_char()</> to use ASCII-only case-folding rules where
+      appropriate (Tom Lane)
+     </para>
+
+     <para>
+      This fixes misbehavior of some template patterns that should be
+      locale-independent, but mishandled <quote><literal>I</></quote> and
+      <quote><literal>i</></quote> in Turkish locales.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix unwanted rejection of timestamp <literal>1999-12-31 24:00:00</>
+      (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix logic error when a single transaction does <command>UNLISTEN</>
+      then <command>LISTEN</> (Tom Lane)
+     </para>
+
+     <para>
+      The session wound up not listening for notify events at all, though it
+      surely should listen in this case.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Remove useless <quote>picksplit doesn't support secondary split</> log
+      messages (Josh Hansen, Tom Lane)
+     </para>
+
+     <para>
+      This message seems to have been added in expectation of code that was
+      never written, and probably never will be, since GiST's default
+      handling of secondary splits is actually pretty good.  So stop nagging
+      end users about it.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible failure to send a session's last few transaction
+      commit/abort counts to the statistics collector (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Eliminate memory leaks in PL/Perl's <function>spi_prepare()</> function
+      (Alex Hunsaker, Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <application>pg_dumpall</> to handle database names containing
+      <quote><literal>=</></quote> correctly (Heikki Linnakangas)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Avoid crash in <application>pg_dump</> when an incorrect connection
+      string is given (Heikki Linnakangas)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ignore invalid indexes in <application>pg_dump</> and
+      <application>pg_upgrade</> (Michael Paquier, Bruce Momjian)
+     </para>
+
+     <para>
+      Dumping invalid indexes can cause problems at restore time, for example
+      if the reason the index creation failed was because it tried to enforce
+      a uniqueness condition not satisfied by the table's data.  Also, if the
+      index creation is in fact still in progress, it seems reasonable to
+      consider it to be an uncommitted DDL change, which
+      <application>pg_dump</> wouldn't be expected to dump anyway.
+      <application>pg_upgrade</> now also skips invalid indexes rather than
+      failing.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <filename>contrib/pg_trgm</>'s <function>similarity()</> function
+      to return zero for trigram-less strings (Tom Lane)
+     </para>
+
+     <para>
+      Previously it returned <literal>NaN</> due to internal division by zero.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Update time zone data files to <application>tzdata</> release 2013b
+      for DST law changes in Chile, Haiti, Morocco, Paraguay, and some
+      Russian areas.  Also, historical zone data corrections for numerous
+      places.
+     </para>
+
+     <para>
+      Also, update the time zone abbreviation files for recent changes in
+      Russia and elsewhere: <literal>CHOT</>, <literal>GET</>,
+      <literal>IRKT</>, <literal>KGT</>, <literal>KRAT</>, <literal>MAGT</>,
+      <literal>MAWT</>, <literal>MSK</>, <literal>NOVT</>, <literal>OMST</>,
+      <literal>TKT</>, <literal>VLAT</>, <literal>WST</>, <literal>YAKT</>,
+      <literal>YEKT</> now follow their current meanings, and
+      <literal>VOLT</> (Europe/Volgograd) and <literal>MIST</>
+      (Antarctica/Macquarie) are added to the default abbreviations list.
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
  <sect1 id="release-9-0-12">
   <title>Release 9.0.12</title>
 
      </para>
 
      <para>
-      The main consequence of this mistake is that lowering <link
+      In installations that have existed for more than <link
       linkend="guc-vacuum-freeze-min-age"><varname>vacuum_freeze_min_age</></link>
-      would cause full-table vacuuming scans to occur much more frequently
-      than intended.
+      transactions, this mistake prevented autovacuum from using partial-table
+      scans, so that a full-table scan would always happen instead.
      </para>
     </listitem>
 
index 172b125e2228b2650464cc654b852686e0c098e4..0af7f389eccaaedeffe07f8f31cf5b591b65315a 100644 (file)
@@ -1,6 +1,340 @@
 <!-- doc/src/sgml/release-9.1.sgml -->
 <!-- See header comment in release.sgml about typical markup -->
 
+ <sect1 id="release-9-1-9">
+  <title>Release 9.1.9</title>
+
+  <note>
+  <title>Release Date</title>
+  <simpara>2013-04-04</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 9.1.8.
+   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.9</title>
+
+   <para>
+    A dump/restore is not required for those running 9.1.X.
+   </para>
+
+   <para>
+    However, this release corrects several errors in management of GiST
+    indexes.  After installing this update, it is advisable to
+    <command>REINDEX</> any GiST indexes that meet one or more of the
+    conditions described below.
+   </para>
+
+   <para>
+    Also, if you are upgrading from a version earlier than 9.1.6,
+    see the release notes for 9.1.6.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Changes</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Fix insecure parsing of server command-line switches (Mitsumasa
+      Kondo, Kyotaro Horiguchi)
+     </para>
+
+     <para>
+      A connection request containing a database name that begins with
+      <quote><literal>-</></quote> could be crafted to damage or destroy
+      files within the server's data directory, even if the request is
+      eventually rejected.  (CVE-2013-1899)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Reset OpenSSL randomness state in each postmaster child process
+      (Marko Kreen)
+     </para>
+
+     <para>
+      This avoids a scenario wherein random numbers generated by
+      <filename>contrib/pgcrypto</> functions might be relatively easy for
+      another database user to guess.  The risk is only significant when
+      the postmaster is configured with <varname>ssl</> = <literal>on</>
+      but most connections don't use SSL encryption.  (CVE-2013-1900)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Make REPLICATION privilege checks test current user not authenticated
+      user (Noah Misch)
+     </para>
+
+     <para>
+      An unprivileged database user could exploit this mistake to call
+      <function>pg_start_backup()</> or <function>pg_stop_backup()</>,
+      thus possibly interfering with creation of routine backups.
+      (CVE-2013-1901)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix GiST indexes to not use <quote>fuzzy</> geometric comparisons when
+      it's not appropriate to do so (Alexander Korotkov)
+     </para>
+
+     <para>
+      The core geometric types perform comparisons using <quote>fuzzy</>
+      equality, but <function>gist_box_same</> must do exact comparisons,
+      else GiST indexes using it might become inconsistent.  After installing
+      this update, users should <command>REINDEX</> any GiST indexes on
+      <type>box</>, <type>polygon</>, <type>circle</>, or <type>point</>
+      columns, since all of these use <function>gist_box_same</>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix erroneous range-union and penalty logic in GiST indexes that use
+      <filename>contrib/btree_gist</> for variable-width data types, that is
+      <type>text</>, <type>bytea</>, <type>bit</>, and <type>numeric</>
+      columns (Tom Lane)
+     </para>
+
+     <para>
+      These errors could result in inconsistent indexes in which some keys
+      that are present would not be found by searches, and also in useless
+      index bloat.  Users are advised to <command>REINDEX</> such indexes
+      after installing this update.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix bugs in GiST page splitting code for multi-column indexes
+      (Tom Lane)
+     </para>
+
+     <para>
+      These errors could result in inconsistent indexes in which some keys
+      that are present would not be found by searches, and also in indexes
+      that are unnecessarily inefficient to search.  Users are advised to
+      <command>REINDEX</> multi-column GiST indexes after installing this
+      update.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <function>gist_point_consistent</>
+      to handle fuzziness consistently (Alexander Korotkov)
+     </para>
+
+     <para>
+      Index scans on GiST indexes on <type>point</> columns would sometimes
+      yield results different from a sequential scan, because
+      <function>gist_point_consistent</> disagreed with the underlying
+      operator code about whether to do comparisons exactly or fuzzily.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix buffer leak in WAL replay (Heikki Linnakangas)
+     </para>
+
+     <para>
+      This bug could result in <quote>incorrect local pin count</> errors
+      during replay, making recovery impossible.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix race condition in <command>DELETE RETURNING</> (Tom Lane)
+     </para>
+
+     <para>
+      Under the right circumstances, <command>DELETE RETURNING</> could
+      attempt to fetch data from a shared buffer that the current process
+      no longer has any pin on.  If some other process changed the buffer
+      meanwhile, this would lead to garbage <literal>RETURNING</> output, or
+      even a crash.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix infinite-loop risk in regular expression compilation (Tom Lane,
+      Don Porter)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix potential null-pointer dereference in regular expression compilation
+      (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <function>to_char()</> to use ASCII-only case-folding rules where
+      appropriate (Tom Lane)
+     </para>
+
+     <para>
+      This fixes misbehavior of some template patterns that should be
+      locale-independent, but mishandled <quote><literal>I</></quote> and
+      <quote><literal>i</></quote> in Turkish locales.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix unwanted rejection of timestamp <literal>1999-12-31 24:00:00</>
+      (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix logic error when a single transaction does <command>UNLISTEN</>
+      then <command>LISTEN</> (Tom Lane)
+     </para>
+
+     <para>
+      The session wound up not listening for notify events at all, though it
+      surely should listen in this case.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible planner crash after columns have been added to a view
+      that's depended on by another view (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Remove useless <quote>picksplit doesn't support secondary split</> log
+      messages (Josh Hansen, Tom Lane)
+     </para>
+
+     <para>
+      This message seems to have been added in expectation of code that was
+      never written, and probably never will be, since GiST's default
+      handling of secondary splits is actually pretty good.  So stop nagging
+      end users about it.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible failure to send a session's last few transaction
+      commit/abort counts to the statistics collector (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Eliminate memory leaks in PL/Perl's <function>spi_prepare()</> function
+      (Alex Hunsaker, Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <application>pg_dumpall</> to handle database names containing
+      <quote><literal>=</></quote> correctly (Heikki Linnakangas)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Avoid crash in <application>pg_dump</> when an incorrect connection
+      string is given (Heikki Linnakangas)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ignore invalid indexes in <application>pg_dump</> and
+      <application>pg_upgrade</> (Michael Paquier, Bruce Momjian)
+     </para>
+
+     <para>
+      Dumping invalid indexes can cause problems at restore time, for example
+      if the reason the index creation failed was because it tried to enforce
+      a uniqueness condition not satisfied by the table's data.  Also, if the
+      index creation is in fact still in progress, it seems reasonable to
+      consider it to be an uncommitted DDL change, which
+      <application>pg_dump</> wouldn't be expected to dump anyway.
+      <application>pg_upgrade</> now also skips invalid indexes rather than
+      failing.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In <application>pg_basebackup</>, include only the current server
+      version's subdirectory when backing up a tablespace (Heikki
+      Linnakangas)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add a server version check in <application>pg_basebackup</> and
+      <application>pg_receivexlog</>, so they fail cleanly with version
+      combinations that won't work (Heikki Linnakangas)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <filename>contrib/pg_trgm</>'s <function>similarity()</> function
+      to return zero for trigram-less strings (Tom Lane)
+     </para>
+
+     <para>
+      Previously it returned <literal>NaN</> due to internal division by zero.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Update time zone data files to <application>tzdata</> release 2013b
+      for DST law changes in Chile, Haiti, Morocco, Paraguay, and some
+      Russian areas.  Also, historical zone data corrections for numerous
+      places.
+     </para>
+
+     <para>
+      Also, update the time zone abbreviation files for recent changes in
+      Russia and elsewhere: <literal>CHOT</>, <literal>GET</>,
+      <literal>IRKT</>, <literal>KGT</>, <literal>KRAT</>, <literal>MAGT</>,
+      <literal>MAWT</>, <literal>MSK</>, <literal>NOVT</>, <literal>OMST</>,
+      <literal>TKT</>, <literal>VLAT</>, <literal>WST</>, <literal>YAKT</>,
+      <literal>YEKT</> now follow their current meanings, and
+      <literal>VOLT</> (Europe/Volgograd) and <literal>MIST</>
+      (Antarctica/Macquarie) are added to the default abbreviations list.
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
  <sect1 id="release-9-1-8">
   <title>Release 9.1.8</title>
 
      </para>
 
      <para>
-      The main consequence of this mistake is that lowering <link
+      In installations that have existed for more than <link
       linkend="guc-vacuum-freeze-min-age"><varname>vacuum_freeze_min_age</></link>
-      would cause full-table vacuuming scans to occur much more frequently
-      than intended.
+      transactions, this mistake prevented autovacuum from using partial-table
+      scans, so that a full-table scan would always happen instead.
      </para>
     </listitem>
 
index 61bb925dca425d062142bdadcfc711af1547e8c3..e7cd66240a674d82106e635298c8cd13fe5b261d 100644 (file)
@@ -1,6 +1,413 @@
 <!-- doc/src/sgml/release-9.2.sgml -->
 <!-- See header comment in release.sgml about typical markup -->
 
+ <sect1 id="release-9-2-4">
+  <title>Release 9.2.4</title>
+
+  <note>
+  <title>Release Date</title>
+  <simpara>2013-04-04</simpara>
+  </note>
+
+  <para>
+   This release contains a variety of fixes from 9.2.3.
+   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.4</title>
+
+   <para>
+    A dump/restore is not required for those running 9.2.X.
+   </para>
+
+   <para>
+    However, this release corrects several errors in management of GiST
+    indexes.  After installing this update, it is advisable to
+    <command>REINDEX</> any GiST indexes that meet one or more of the
+    conditions described below.
+   </para>
+
+   <para>
+    Also, if you are upgrading from a version earlier than 9.2.2,
+    see the release notes for 9.2.2.
+   </para>
+
+  </sect2>
+
+  <sect2>
+   <title>Changes</title>
+
+   <itemizedlist>
+
+    <listitem>
+     <para>
+      Fix insecure parsing of server command-line switches (Mitsumasa
+      Kondo, Kyotaro Horiguchi)
+     </para>
+
+     <para>
+      A connection request containing a database name that begins with
+      <quote><literal>-</></quote> could be crafted to damage or destroy
+      files within the server's data directory, even if the request is
+      eventually rejected.  (CVE-2013-1899)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Reset OpenSSL randomness state in each postmaster child process
+      (Marko Kreen)
+     </para>
+
+     <para>
+      This avoids a scenario wherein random numbers generated by
+      <filename>contrib/pgcrypto</> functions might be relatively easy for
+      another database user to guess.  The risk is only significant when
+      the postmaster is configured with <varname>ssl</> = <literal>on</>
+      but most connections don't use SSL encryption.  (CVE-2013-1900)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Make REPLICATION privilege checks test current user not authenticated
+      user (Noah Misch)
+     </para>
+
+     <para>
+      An unprivileged database user could exploit this mistake to call
+      <function>pg_start_backup()</> or <function>pg_stop_backup()</>,
+      thus possibly interfering with creation of routine backups.
+      (CVE-2013-1901)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix GiST indexes to not use <quote>fuzzy</> geometric comparisons when
+      it's not appropriate to do so (Alexander Korotkov)
+     </para>
+
+     <para>
+      The core geometric types perform comparisons using <quote>fuzzy</>
+      equality, but <function>gist_box_same</> must do exact comparisons,
+      else GiST indexes using it might become inconsistent.  After installing
+      this update, users should <command>REINDEX</> any GiST indexes on
+      <type>box</>, <type>polygon</>, <type>circle</>, or <type>point</>
+      columns, since all of these use <function>gist_box_same</>.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix erroneous range-union and penalty logic in GiST indexes that use
+      <filename>contrib/btree_gist</> for variable-width data types, that is
+      <type>text</>, <type>bytea</>, <type>bit</>, and <type>numeric</>
+      columns (Tom Lane)
+     </para>
+
+     <para>
+      These errors could result in inconsistent indexes in which some keys
+      that are present would not be found by searches, and also in useless
+      index bloat.  Users are advised to <command>REINDEX</> such indexes
+      after installing this update.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix bugs in GiST page splitting code for multi-column indexes
+      (Tom Lane)
+     </para>
+
+     <para>
+      These errors could result in inconsistent indexes in which some keys
+      that are present would not be found by searches, and also in indexes
+      that are unnecessarily inefficient to search.  Users are advised to
+      <command>REINDEX</> multi-column GiST indexes after installing this
+      update.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <function>gist_point_consistent</>
+      to handle fuzziness consistently (Alexander Korotkov)
+     </para>
+
+     <para>
+      Index scans on GiST indexes on <type>point</> columns would sometimes
+      yield results different from a sequential scan, because
+      <function>gist_point_consistent</> disagreed with the underlying
+      operator code about whether to do comparisons exactly or fuzzily.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix buffer leak in WAL replay (Heikki Linnakangas)
+     </para>
+
+     <para>
+      This bug could result in <quote>incorrect local pin count</> errors
+      during replay, making recovery impossible.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ensure we do crash recovery before entering archive recovery, if the
+      database was not stopped cleanly and a <filename>recovery.conf</> file
+      is present (Heikki Linnakangas, Kyotaro Horiguchi, Mitsumasa Kondo)
+     </para>
+
+     <para>
+      This is needed to ensure that the database is consistent in certain
+      scenarios, such as initializing a standby server with a filesystem
+      snapshot from a running server.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Avoid deleting not-yet-archived WAL files during crash recovery
+      (Heikki Linnakangas, Fujii Masao)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix race condition in <command>DELETE RETURNING</> (Tom Lane)
+     </para>
+
+     <para>
+      Under the right circumstances, <command>DELETE RETURNING</> could
+      attempt to fetch data from a shared buffer that the current process
+      no longer has any pin on.  If some other process changed the buffer
+      meanwhile, this would lead to garbage <literal>RETURNING</> output, or
+      even a crash.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix infinite-loop risk in regular expression compilation (Tom Lane,
+      Don Porter)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix potential null-pointer dereference in regular expression compilation
+      (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <function>to_char()</> to use ASCII-only case-folding rules where
+      appropriate (Tom Lane)
+     </para>
+
+     <para>
+      This fixes misbehavior of some template patterns that should be
+      locale-independent, but mishandled <quote><literal>I</></quote> and
+      <quote><literal>i</></quote> in Turkish locales.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix unwanted rejection of timestamp <literal>1999-12-31 24:00:00</>
+      (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix SQL-language functions to be safely usable as support
+      functions for range types (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix logic error when a single transaction does <command>UNLISTEN</>
+      then <command>LISTEN</> (Tom Lane)
+     </para>
+
+     <para>
+      The session wound up not listening for notify events at all, though it
+      surely should listen in this case.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible planner crash after columns have been added to a view
+      that's depended on by another view (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix performance issue in <literal>EXPLAIN (ANALYZE, TIMING OFF)</>
+      (Pavel Stehule)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Remove useless <quote>picksplit doesn't support secondary split</> log
+      messages (Josh Hansen, Tom Lane)
+     </para>
+
+     <para>
+      This message seems to have been added in expectation of code that was
+      never written, and probably never will be, since GiST's default
+      handling of secondary splits is actually pretty good.  So stop nagging
+      end users about it.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Remove vestigial secondary-split support in
+      <function>gist_box_picksplit()</> (Tom Lane)
+     </para>
+
+     <para>
+      Not only was this implementation of secondary-split not better than the
+      default implementation, it's actually worse.  So remove it and let the
+      default code path handle the case.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix possible failure to send a session's last few transaction
+      commit/abort counts to the statistics collector (Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Eliminate memory leaks in PL/Perl's <function>spi_prepare()</> function
+      (Alex Hunsaker, Tom Lane)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <application>pg_dumpall</> to handle database names containing
+      <quote><literal>=</></quote> correctly (Heikki Linnakangas)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Avoid crash in <application>pg_dump</> when an incorrect connection
+      string is given (Heikki Linnakangas)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Ignore invalid indexes in <application>pg_dump</> and
+      <application>pg_upgrade</> (Michael Paquier, Bruce Momjian)
+     </para>
+
+     <para>
+      Dumping invalid indexes can cause problems at restore time, for example
+      if the reason the index creation failed was because it tried to enforce
+      a uniqueness condition not satisfied by the table's data.  Also, if the
+      index creation is in fact still in progress, it seems reasonable to
+      consider it to be an uncommitted DDL change, which
+      <application>pg_dump</> wouldn't be expected to dump anyway.
+      <application>pg_upgrade</> now also skips invalid indexes rather than
+      failing.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      In <application>pg_basebackup</>, include only the current server
+      version's subdirectory when backing up a tablespace (Heikki
+      Linnakangas)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Add a server version check in <application>pg_basebackup</> and
+      <application>pg_receivexlog</>, so they fail cleanly with version
+      combinations that won't work (Heikki Linnakangas)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <filename>contrib/dblink</> to handle inconsistent settings of
+      <varname>DateStyle</> or <varname>IntervalStyle</> safely (Daniel
+      Farina, Tom Lane)
+     </para>
+
+     <para>
+      Previously, if the remote server had different settings of these
+      parameters, ambiguous dates might be read incorrectly.  This fix
+      ensures that datetime and interval columns fetched by a
+      <filename>dblink</> query will be interpreted correctly.  Note however
+      that inconsistent settings are still risky, since literal values
+      appearing in SQL commands sent to the remote server might be
+      interpreted differently than they would be locally.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Fix <filename>contrib/pg_trgm</>'s <function>similarity()</> function
+      to return zero for trigram-less strings (Tom Lane)
+     </para>
+
+     <para>
+      Previously it returned <literal>NaN</> due to internal division by zero.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Enable building <productname>PostgreSQL</> with Microsoft Visual
+      Studio 2012 (Brar Piening, Noah Misch)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Update time zone data files to <application>tzdata</> release 2013b
+      for DST law changes in Chile, Haiti, Morocco, Paraguay, and some
+      Russian areas.  Also, historical zone data corrections for numerous
+      places.
+     </para>
+
+     <para>
+      Also, update the time zone abbreviation files for recent changes in
+      Russia and elsewhere: <literal>CHOT</>, <literal>GET</>,
+      <literal>IRKT</>, <literal>KGT</>, <literal>KRAT</>, <literal>MAGT</>,
+      <literal>MAWT</>, <literal>MSK</>, <literal>NOVT</>, <literal>OMST</>,
+      <literal>TKT</>, <literal>VLAT</>, <literal>WST</>, <literal>YAKT</>,
+      <literal>YEKT</> now follow their current meanings, and
+      <literal>VOLT</> (Europe/Volgograd) and <literal>MIST</>
+      (Antarctica/Macquarie) are added to the default abbreviations list.
+     </para>
+    </listitem>
+
+   </itemizedlist>
+
+  </sect2>
+ </sect1>
+
  <sect1 id="release-9-2-3">
   <title>Release 9.2.3</title>
 
      </para>
 
      <para>
-      The main consequence of this mistake is that lowering <link
+      In installations that have existed for more than <link
       linkend="guc-vacuum-freeze-min-age"><varname>vacuum_freeze_min_age</></link>
-      would cause full-table vacuuming scans to occur much more frequently
-      than intended.
+      transactions, this mistake prevented autovacuum from using partial-table
+      scans, so that a full-table scan would always happen instead.
      </para>
     </listitem>
 
 
     <listitem>
      <para>
-      Fix <application>pg_upgrade</>'s -O/-o options (Bruce Momjian)
+      Fix <application>pg_upgrade</>'s -O/-o options (Marti Raudsepp)
      </para>
     </listitem>