Comment 21 for bug 904631

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package postgresql-8.4 - 8.4.10-0ubuntu0.10.10.1

---------------
postgresql-8.4 (8.4.10-0ubuntu0.10.10.1) maverick-proposed; urgency=low

  * Add 00git_inet_cidr_unpack.patch: Revert the behavior of inet/cidr
    functions to not unpack the arguments. This fixes the memory leak when
    sorting inet values. Patch taken from upstream git HEAD. Spotted during
    testing in LP #904631.
  * 01-armel-tas.patch: Turn slock_t datatype into an int, and define
    S_UNLOCK() to call __sync_lock_release() instead of using the default
    implementation. This complies to the gcc built-in atomic operations
    specifiction more strictly and now also works on the Panda boards.
    (LP: #904828)

postgresql-8.4 (8.4.10-0ubuntu0.10.10) maverick-proposed; urgency=low

  * New upstream release (LP: #904631)
    - Fix bugs in information_schema.referential_constraints view.
      This view was being insufficiently careful about matching the
      foreign-key constraint to the depended-on primary or unique key
      constraint. That could result in failure to show a foreign key
      constraint at all, or showing it multiple times, or claiming that
      it depends on a different constraint than the one it really does.
      Since the view definition is installed by initdb, merely upgrading
      will not fix the problem. If you need to fix this in an existing
      installation, you can (as a superuser) drop the information_schema
      schema then re-create it by sourcing
      "SHAREDIR/information_schema.sql". (Run pg_config --sharedir if
      you're uncertain where "SHAREDIR" is.) This must be repeated in
      each database to be fixed.
    - Fix incorrect replay of WAL records for GIN index updates.
      This could result in transiently failing to find index entries
      after a crash, or on a hot-standby server. The problem would be
      repaired by the next "VACUUM" of the index, however.
    - Fix TOAST-related data corruption during CREATE TABLE dest AS
      SELECT - FROM src or INSERT INTO dest SELECT * FROM src.
      If a table has been modified by "ALTER TABLE ADD COLUMN", attempts
      to copy its data verbatim to another table could produce corrupt
      results in certain corner cases. The problem can only manifest in
      this precise form in 8.4 and later, but we patched earlier versions
      as well in case there are other code paths that could trigger the
      same bug.
    - Fix race condition during toast table access from stale syscache
      entries.
    - Track dependencies of functions on items used in parameter default
      expressions. Previously, a referenced object could be dropped without
      having dropped or modified the function, leading to misbehavior when the
      function was used. Note that merely installing this update will not fix
      the missing dependency entries; to do that, you'd need to "CREATE OR
      REPLACE" each such function afterwards. If you have functions whose
      defaults depend on non-built-in objects, doing so is recommended.
    - Allow inlining of set-returning SQL functions with multiple OUT
      parameters.
    - Make DatumGetInetP() unpack inet datums that have a 1-byte header,
      and add a new macro, DatumGetInetPP(), that does not.
    - Improve locale support in money type's input and output.
      Aside from not supporting all standard lc_monetary formatting
      options, the input and output functions were inconsistent, meaning
      there were locales in which dumped money values could not be
      re-read.
    - Don't let transform_null_equals affect CASE foo WHEN NULL ...
      constructs. transform_null_equals is only supposed to affect foo = NULL
      expressions written directly by the user, not equality checks
      generated internally by this form of CASE.
    - Change foreign-key trigger creation order to better support
      self-referential foreign keys. For a cascading foreign key that
      references its own table, a row update will fire both the ON UPDATE
      trigger and the CHECK trigger as one event. The ON UPDATE trigger must
      execute first, else the CHECK will check a non-final state of the row
      and possibly throw an inappropriate error. However, the firing order of
      these triggers is determined by their names, which generally sort in
      creation order since the triggers have auto-generated names following
      the convention "RI_ConstraintTrigger_NNNN". A proper fix would require
      modifying that convention, which we will do in 9.2, but it seems risky
      to change it in existing releases. So this patch just changes the
      creation order of the triggers. Users encountering this type of error
      should drop and re-create the foreign key constraint to get its triggers
      into the right order.
    - Avoid floating-point underflow while tracking buffer allocation
      rate.
    - Preserve blank lines within commands in psql's command history.
      The former behavior could cause problems if an empty line was
      removed from within a string literal, for example.
    - Fix pg_dump to dump user-defined casts between auto-generated
      types, such as table rowtypes.
    - Use the preferred version of xsubpp to build PL/Perl, not
      necessarily the operating system's main copy.
    - Fix incorrect coding in "contrib/dict_int" and "contrib/dict_xsyn".
    - Honor query cancel interrupts promptly in pgstatindex().
    - Ensure VPATH builds properly install all server header files.
    - Shorten file names reported in verbose error messages.
      Regular builds have always reported just the name of the C file
      containing the error message call, but VPATH builds formerly
      reported an absolute path name.
 -- Martin Pitt <email address hidden> Thu, 05 Jan 2012 13:16:22 +0100