Release date: 2010-03-15
This release contains a variety of fixes from 8.1.19. For information about new features in the 8.1 major release, see Section E.226.
A dump/restore is not required for those running 8.1.X. However, if you are upgrading from a version earlier than 8.1.18, see Section E.208.
Add new configuration parameter ssl_renegotiation_limit
to
control how often we do session key renegotiation for an SSL connection
(Magnus)
This can be set to zero to disable renegotiation completely, which may be required if a broken SSL library is used. In particular, some vendors are shipping stopgap patches for CVE-2009-3555 that cause renegotiation attempts to fail.
Fix possible crashes when trying to recover from a failure in subtransaction start (Tom)
Fix server memory leak associated with use of savepoints and a client encoding different from server's encoding (Tom)
Make substring()
for bit
types treat any negative
length as meaning “all the rest of the string” (Tom)
The previous coding treated only -1 that way, and would produce an invalid result value for other negative values, possibly leading to a crash (CVE-2010-0442).
Fix integer-to-bit-string conversions to handle the first fractional byte correctly when the output bit width is wider than the given integer by something other than a multiple of 8 bits (Tom)
Fix some cases of pathologically slow regular expression matching (Tom)
Fix the STOP WAL LOCATION
entry in backup history files to
report the next WAL segment's name when the end location is exactly at a
segment boundary (Itagaki Takahiro)
Fix some more cases of temporary-file leakage (Heikki)
This corrects a problem introduced in the previous minor release. One case that failed is when a plpgsql function returning set is called within another function's exception handler.
When reading pg_hba.conf
and related files, do not treat
@something
as a file inclusion request if the @
appears inside quote marks; also, never treat @
by itself
as a file inclusion request (Tom)
This prevents erratic behavior if a role or database name starts with
@
. If you need to include a file whose path name
contains spaces, you can still do so, but you must write
@"/path to/file"
rather than putting the quotes around
the whole construct.
Prevent infinite loop on some platforms if a directory is named as
an inclusion target in pg_hba.conf
and related files
(Tom)
Fix psql's numericlocale
option to not
format strings it shouldn't in latex and troff output formats (Heikki)
Fix plpgsql failure in one case where a composite column is set to NULL (Tom)
Add volatile
markings in PL/Python to avoid possible
compiler-specific misbehavior (Zdenek Kotala)
Ensure PL/Tcl initializes the Tcl interpreter fully (Tom)
The only known symptom of this oversight is that the Tcl
clock
command misbehaves if using Tcl 8.5 or later.
Prevent crash in contrib/dblink
when too many key
columns are specified to a dblink_build_sql_*
function
(Rushabh Lathia, Joe Conway)
Fix assorted crashes in contrib/xml2
caused by sloppy
memory management (Tom)
Update time zone data files to tzdata release 2010e for DST law changes in Bangladesh, Chile, Fiji, Mexico, Paraguay, Samoa.