* New upstream bug fix release: (LP: #557408)
- Add new configuration parameter ssl_renegotiation_limit to control
how often we do session key renegotiation for an SSL connection.
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 deadlock during backend startup.
- Fix possible crashes due to not handling errors during relcache
reload cleanly.
- Fix possible crash due to use of dangling pointer to a cached plan.
- Fix possible crash due to overenthusiastic invalidation of cached
plan for "ROLLBACK".
- Fix possible crashes when trying to recover from a failure in
subtransaction start.
- Fix server memory leak associated with use of savepoints and a
client encoding different from server's encoding.
- Fix incorrect WAL data emitted during end-of-recovery cleanup of a
GIST index page split.
- Fix bug in WAL redo cleanup method for GIN indexes.
- Fix incorrect comparison of scan key in GIN index search.
- Make substring() for bit types treat any negative length as meaning
"all the rest of the string". 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.
- Fix some cases of pathologically slow regular expression matching.
- Fix bug occurring when trying to inline a SQL function that returns
a set of a composite type that contains dropped columns.
- Fix bug with trying to update a field of an element of a
composite-type array column.
- Avoid failure when "EXPLAIN" has to print a FieldStore or
assignment ArrayRef expression.
These cases can arise now that "EXPLAIN VERBOSE" tries to print
plan node target lists.
- Avoid an unnecessary coercion failure in some cases where an
undecorated literal string appears in a subquery within
"UNION"/"INTERSECT"/"EXCEPT".
This fixes a regression for some cases that worked before 8.4.
- Avoid undesirable rowtype compatibility check failures in some
cases where a whole-row Var has a rowtype that contains dropped
columns.
- 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.
- Always pass the catalog ID to an option validator function
specified in "CREATE FOREIGN DATA WRAPPER".
- Fix some more cases of temporary-file leakage.
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.
- Add support for doing FULL JOIN ON FALSE.
This prevents a regression from pre-8.4 releases for some queries
that can now be simplified to a constant-false join condition.
- Improve constraint exclusion processing of boolean-variable cases,
in particular make it possible to exclude a partition that has a
"bool_column = false" constraint.
- Prevent treating an INOUT cast as representing binary compatibility.
- Include column name in the message when warning about inability to
grant or revoke column-level privileges.
This is more useful than before and helps to prevent confusion when
a "REVOKE" generates multiple messages, which formerly appeared to
be duplicates.
- 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.
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.
- Fix possible infinite loop if SSL_read or SSL_write fails without
setting errno.
This is reportedly possible with some Windows versions of openssl.
- Disallow GSSAPI authentication on local connections, since it
requires a hostname to function correctly.
- Protect ecpg against applications freeing strings unexpectedly.
- Make ecpg report the proper SQLSTATE if the connection disappears.
- Fix translation of cell contents in psql \d output.
- Fix psql's numericlocale option to not format strings it shouldn't
in latex and troff output formats.
- Fix a small per-query memory leak in psql.
- Make psql return the correct exit status (3) when ON_ERROR_STOP and
--single-transaction are both specified and an error occurs during
the implied "COMMIT".
- Fix pg_dump's output of permissions for foreign servers.
- Fix possible crash in parallel pg_restore due to out-of-range
dependency IDs.
- Fix plpgsql failure in one case where a composite column is set to
NULL.
- Fix possible failure when calling PL/Perl functions from PL/PerlU
or vice versa.
- Add volatile markings in PL/Python to avoid possible
compiler-specific misbehavior>
- Ensure PL/Tcl initializes the Tcl interpreter.
The only known symptom of this oversight is that the Tcl clock
command misbehaves if using Tcl 8.5 or later.
- Prevent ExecutorEnd from being run on portals created within a
failed transaction or subtransaction.
This is known to cause issues when using "contrib/auto_explain".
- Prevent crash in "contrib/dblink" when too many key columns are
specified to a dblink_build_sql_- function.
- Allow zero-dimensional arrays in "contrib/ltree" operations.
This case was formerly rejected as an error, but it's more
convenient to treat it the same as a zero-element array. In
particular this avoids unnecessary failures when an ltree operation
is applied to the result of ARRAY(SELECT ...) and the sub-select
returns no rows.
- Fix assorted crashes in "contrib/xml2" caused by sloppy memory
management.
-- Martin Pitt <email address hidden> Wed, 07 Apr 2010 18:37:40 +0200
This bug was fixed in the package postgresql-8.4 - 8.4.3-0ubuntu9.10
---------------
postgresql-8.4 (8.4.3-0ubuntu9.10) karmic-proposed; urgency=low
* New upstream bug fix release: (LP: #557408) on_limit to control ction start. to-bit- string conversions to handle the first -type array column. UNION"/ "INTERSECT" /"EXCEPT" . -single- transaction are both specified and an error occurs during specific misbehavior> auto_explain" .
- Add new configuration parameter ssl_renegotiati
how often we do session key renegotiation for an SSL connection.
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 deadlock during backend startup.
- Fix possible crashes due to not handling errors during relcache
reload cleanly.
- Fix possible crash due to use of dangling pointer to a cached plan.
- Fix possible crash due to overenthusiastic invalidation of cached
plan for "ROLLBACK".
- Fix possible crashes when trying to recover from a failure in
subtransa
- Fix server memory leak associated with use of savepoints and a
client encoding different from server's encoding.
- Fix incorrect WAL data emitted during end-of-recovery cleanup of a
GIST index page split.
- Fix bug in WAL redo cleanup method for GIN indexes.
- Fix incorrect comparison of scan key in GIN index search.
- Make substring() for bit types treat any negative length as meaning
"all the rest of the string". 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-
fractional byte correctly when the output bit width is wider than
the given integer by something other than a multiple of 8 bits.
- Fix some cases of pathologically slow regular expression matching.
- Fix bug occurring when trying to inline a SQL function that returns
a set of a composite type that contains dropped columns.
- Fix bug with trying to update a field of an element of a
composite
- Avoid failure when "EXPLAIN" has to print a FieldStore or
assignment ArrayRef expression.
These cases can arise now that "EXPLAIN VERBOSE" tries to print
plan node target lists.
- Avoid an unnecessary coercion failure in some cases where an
undecorated literal string appears in a subquery within
"
This fixes a regression for some cases that worked before 8.4.
- Avoid undesirable rowtype compatibility check failures in some
cases where a whole-row Var has a rowtype that contains dropped
columns.
- 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.
- Always pass the catalog ID to an option validator function
specified in "CREATE FOREIGN DATA WRAPPER".
- Fix some more cases of temporary-file leakage.
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.
- Add support for doing FULL JOIN ON FALSE.
This prevents a regression from pre-8.4 releases for some queries
that can now be simplified to a constant-false join condition.
- Improve constraint exclusion processing of boolean-variable cases,
in particular make it possible to exclude a partition that has a
"bool_column = false" constraint.
- Prevent treating an INOUT cast as representing binary compatibility.
- Include column name in the message when warning about inability to
grant or revoke column-level privileges.
This is more useful than before and helps to prevent confusion when
a "REVOKE" generates multiple messages, which formerly appeared to
be duplicates.
- 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.
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.
- Fix possible infinite loop if SSL_read or SSL_write fails without
setting errno.
This is reportedly possible with some Windows versions of openssl.
- Disallow GSSAPI authentication on local connections, since it
requires a hostname to function correctly.
- Protect ecpg against applications freeing strings unexpectedly.
- Make ecpg report the proper SQLSTATE if the connection disappears.
- Fix translation of cell contents in psql \d output.
- Fix psql's numericlocale option to not format strings it shouldn't
in latex and troff output formats.
- Fix a small per-query memory leak in psql.
- Make psql return the correct exit status (3) when ON_ERROR_STOP and
-
the implied "COMMIT".
- Fix pg_dump's output of permissions for foreign servers.
- Fix possible crash in parallel pg_restore due to out-of-range
dependency IDs.
- Fix plpgsql failure in one case where a composite column is set to
NULL.
- Fix possible failure when calling PL/Perl functions from PL/PerlU
or vice versa.
- Add volatile markings in PL/Python to avoid possible
compiler-
- Ensure PL/Tcl initializes the Tcl interpreter.
The only known symptom of this oversight is that the Tcl clock
command misbehaves if using Tcl 8.5 or later.
- Prevent ExecutorEnd from being run on portals created within a
failed transaction or subtransaction.
This is known to cause issues when using "contrib/
- Prevent crash in "contrib/dblink" when too many key columns are
specified to a dblink_build_sql_- function.
- Allow zero-dimensional arrays in "contrib/ltree" operations.
This case was formerly rejected as an error, but it's more
convenient to treat it the same as a zero-element array. In
particular this avoids unnecessary failures when an ltree operation
is applied to the result of ARRAY(SELECT ...) and the sub-select
returns no rows.
- Fix assorted crashes in "contrib/xml2" caused by sloppy memory
management.
-- Martin Pitt <email address hidden> Wed, 07 Apr 2010 18:37:40 +0200