postgresql-8.4 8.4.10-1 source package in Ubuntu


postgresql-8.4 (8.4.10-1) unstable; urgency=low

  * New upstream bug fix release:
    - 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
    - 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
    - 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
    - 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
    - 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>  Fri, 02 Dec 2011 14:46:33 +0100

Upload details

Uploaded by:
Martin Pitt on 2011-12-06
Uploaded to:
Original maintainer:
Martin Pitt
any all
Low Urgency

See full publishing history Publishing

Series Pocket Published Component Section


File Size SHA-256 Checksum
postgresql-8.4_8.4.10-1.dsc 2.6 KiB 07cf0025c260275901f2cd0de876aad408517d3a8f06d0a1393a4738c9dc2d56
postgresql-8.4_8.4.10.orig.tar.gz 17.3 MiB 8da06d33a08004293d70eac1d006c8af3d8aec6e13b509fdcf0ff800e48c4cd7
postgresql-8.4_8.4.10-1.diff.gz 44.0 KiB 8d691a57fa3f5d0be1511a57d345b0098b0b57f065a1eae7b48cf0b63b1731e7

No changes file available.

Binary packages built by this source

postgresql-8.4: object-relational SQL database, version 8.4 server

 PostgreSQL is a fully featured object-relational database management
 system. It supports a large part of the SQL standard and is designed
 to be extensible by users in many aspects. Some of the features are:
 ACID transactions, foreign keys, views, sequences, subqueries,
 triggers, user-defined types and functions, outer joins, multiversion
 concurrency control. Graphical user interfaces and bindings for many
 programming languages are available as well.
 This package provides the database server for PostgreSQL 8.4. Servers
 for other major release versions can be installed simultaneously and
 are coordinated by the postgresql-common package. A package providing
 ident-server is needed if you want to authenticate remote connections
 with identd.

postgresql-client-8.4: front-end programs for PostgreSQL 8.4

 This package contains client and administrative programs for
 PostgreSQL: these are the interactive terminal client psql and
 programs for creating and removing users and databases.
 This is the client package for PostgreSQL 8.4. If you install
 PostgreSQL 8.4 on a standalone machine, you need the server package
 postgresql-8.4, too. On a network, you can install this package on
 many client machines, while the server package may be installed on
 only one machine.
 PostgreSQL is an object-relational SQL database management system.

postgresql-contrib-8.4: additional facilities for PostgreSQL

 The PostgreSQL contrib package provides several additional features
 for the PostgreSQL database. This version is built to work with the
 server package postgresql-8.4. contrib often serves as a testbed for
 features before they are adopted into PostgreSQL proper:
  adminpack - File and log manipulation routines, used by pgAdmin
  btree_gist - B-Tree indexing using GiST (Generalised Search Tree)
  chkpass - An auto-encrypted password datatype
  cube - Multidimensional-cube datatype (GiST indexing example)
  dblink - Functions to return results from a remote database
  earthdistance - Operator for computing the distance (in miles) between
                   two points on the earth's surface
  fuzzystrmatch - Levenshtein, metaphone, and soundex fuzzy string matching
  hstore - Store (key, value) pairs
  intagg - Integer aggregator/enumerator
  _int - Index support for arrays of int4, using GiST (benchmark
                   needs the libdbd-pg-perl package)
  isn - type extensions for ISBN, ISSN, ISMN, EAN13 product numbers
  lo - Large Object maintenance
  ltree - Tree-like data structures
  oid2name - Maps OIDs to table names
  pageinspect - Inspection of database pages
  pg_buffercache - Real time queries on the shared buffer cache
  pg_freespacemap- Displays the contents of the free space map (FSM)
  pg_trgm - Determine the similarity of text based on trigram matching
  pg_standby - Create a warm stand-by server
  pgbench - TPC-B like benchmark
  pgcrypto - Cryptographic functions
  pgrowlocks - A function to return row locking information
  pgstattuple - Returns the percentage of dead tuples in a table; this
                   indicates whether a vacuum is required.
  seg - Confidence-interval datatype (GiST indexing example)
  spi - PostgreSQL Server Programming Interface; 4 examples of
                   its use:
                   autoinc - A function for implementing AUTOINCREMENT/
                   insert_username - function for inserting user names
                   moddatetime - Update modification timestamps
                   refint - Functions for implementing referential
                                integrity (foreign keys). Note that this is
                                now superseded by built-in referential
                   timetravel - Re-implements in user code the time travel
                                feature that was removed in 6.3.
  tablefunc - examples of functions returning tables
  uuid-ossp - UUID generation functions
  vacuumlo - Remove orphaned large objects
 PostgreSQL is an object-relational SQL database management system.

postgresql-doc-8.4: documentation for the PostgreSQL database management system

 This package contains all README files, user manual, and examples for
 PostgreSQL 8.4. The manual is in HTML format.
 PostgreSQL is an object-relational SQL database management system.

postgresql-plperl-8.4: PL/Perl procedural language for PostgreSQL 8.4

 PL/Perl enables an SQL developer to write procedural language functions
 for PostgreSQL 8.4 in Perl. You need this package if you have any
 PostgreSQL 8.4 functions that use the languages plperl or plperlu.
 PostgreSQL is an object-relational SQL database management system.

postgresql-plpython-8.4: PL/Python procedural language for PostgreSQL 8.4

 PL/Python enables an SQL developer to write procedural language functions
 for PostgreSQL 8.4 in Python. You need this package if you have any
 PostgreSQL 8.4 functions that use the languages plpython or plpythonu.
 PostgreSQL is an object-relational SQL database management system.

postgresql-pltcl-8.4: PL/Tcl procedural language for PostgreSQL 8.4

 PL/Tcl enables an SQL developer to write procedural language functions
 for PostgreSQL 8.4 in Tcl. You need this package if you have any
 PostgreSQL 8.4 functions that use the languages pltcl or pltclu.
 PostgreSQL is an object-relational SQL database management system.

postgresql-server-dev-8.4: development files for PostgreSQL 8.4 server-side programming

 Header files for compiling SSI code to link into PostgreSQL's backend; for
 example, for C functions to be called from SQL.
 This package also contains the Makefiles necessary for building add-on
 modules of PostgreSQL, which would otherwise have to be built in the
 PostgreSQL source-code tree.
 PostgreSQL is an object-relational SQL database management system.