E.137. Release 8.4.17
Release date: 2013-04-04
This release contains a variety of fixes from 8.4.16. For information about new features in the 8.4 major release, see Section E.154 .
E.137.1. Migration to Version 8.4.17
A dump/restore is not required for those running 8.4.X.
However, this release corrects several errors in management of GiST
indexes. After installing this update, it is advisable to
REINDEX
any GiST indexes that meet one or more of the
conditions described below.
Also, if you are upgrading from a version earlier than 8.4.10, see Section E.144 .
E.137.2. Changes
-
Reset OpenSSL randomness state in each postmaster child process (Marko Kreen)
This avoids a scenario wherein random numbers generated by
contrib/pgcrypto
functions might be relatively easy for another database user to guess. The risk is only significant when the postmaster is configured withssl
=on
but most connections don't use SSL encryption. (CVE-2013-1900) -
Fix GiST indexes to not use " fuzzy " geometric comparisons when it's not appropriate to do so (Alexander Korotkov)
The core geometric types perform comparisons using " fuzzy " equality, but
gist_box_same
must do exact comparisons, else GiST indexes using it might become inconsistent. After installing this update, users shouldREINDEX
any GiST indexes onbox
,polygon
,circle
, orpoint
columns, since all of these usegist_box_same
. -
Fix erroneous range-union and penalty logic in GiST indexes that use
contrib/btree_gist
for variable-width data types, that istext
,bytea
,bit
, andnumeric
columns (Tom Lane)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
REINDEX
such indexes after installing this update. -
Fix bugs in GiST page splitting code for multi-column indexes (Tom Lane)
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
REINDEX
multi-column GiST indexes after installing this update. -
Fix infinite-loop risk in regular expression compilation (Tom Lane, Don Porter)
-
Fix potential null-pointer dereference in regular expression compilation (Tom Lane)
-
Fix
to_char()
to use ASCII-only case-folding rules where appropriate (Tom Lane)This fixes misbehavior of some template patterns that should be locale-independent, but mishandled "
I
" and "i
" in Turkish locales. -
Fix unwanted rejection of timestamp
1999-12-31 24:00:00
(Tom Lane) -
Remove useless " picksplit doesn't support secondary split " log messages (Josh Hansen, Tom Lane)
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.
-
Fix possible failure to send a session's last few transaction commit/abort counts to the statistics collector (Tom Lane)
-
Eliminate memory leaks in PL/Perl's
spi_prepare()
function (Alex Hunsaker, Tom Lane) -
Fix pg_dumpall to handle database names containing "
=
" correctly (Heikki Linnakangas) -
Avoid crash in pg_dump when an incorrect connection string is given (Heikki Linnakangas)
-
Ignore invalid indexes in pg_dump (Michael Paquier)
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 pg_dump wouldn't be expected to dump anyway.
-
Fix
contrib/pg_trgm
'ssimilarity()
function to return zero for trigram-less strings (Tom Lane)Previously it returned
NaN
due to internal division by zero. -
Update time zone data files to tzdata release 2013b for DST law changes in Chile, Haiti, Morocco, Paraguay, and some Russian areas. Also, historical zone data corrections for numerous places.
Also, update the time zone abbreviation files for recent changes in Russia and elsewhere:
CHOT
,GET
,IRKT
,KGT
,KRAT
,MAGT
,MAWT
,MSK
,NOVT
,OMST
,TKT
,VLAT
,WST
,YAKT
,YEKT
now follow their current meanings, andVOLT
(Europe/Volgograd) andMIST
(Antarctica/Macquarie) are added to the default abbreviations list.