postgresql-9.0 9.0.4-1 source package in Ubuntu
Changelog
postgresql-9.0 (9.0.4-1) unstable; urgency=medium Priority medium due to data-loss pg_upgrade bug. * New upstream bug fix release: - If your installation was upgraded from a previous major release by running pg_upgrade, you should take action to prevent possible data loss due to a now-fixed bug in pg_upgrade. The recommended solution is to run "VACUUM FREEZE" on all TOAST tables. More information is available at http://wiki.postgresql.org/wiki/20110408pg_upgrade_fix. - Fix pg_upgrade's handling of TOAST tables. This error poses a significant risk of data loss for installations that have been upgraded with pg_upgrade. This patch corrects the problem for future uses of pg_upgrade, but does not in itself cure the issue in installations that have been processed with a buggy version of pg_upgrade. - Suppress incorrect "PD_ALL_VISIBLE flag was incorrectly set" warning. - Use better SQLSTATE error codes for hot standby conflict cases. - Prevent intermittent hang in interactions of startup process with bgwriter process. This affected recovery in non-hot-standby cases. - Disallow including a composite type in itself. - Avoid potential deadlock during catalog cache initialization. - Fix dangling-pointer problem in BEFORE ROW UPDATE trigger handling when there was a concurrent update to the target tuple. - Disallow "DROP TABLE" when there are pending deferred trigger events for the table. Formerly the "DROP" would go through, leading to "could not open relation with OID nnn" errors when the triggers were eventually fired. - Allow "replication" as a user name in "pg_hba.conf". "replication" is special in the database name column, but it was mistakenly also treated as special in the user name column. - Prevent crash triggered by constant-false WHERE conditions during GEQO optimization. - Improve planner's handling of semi-join and anti-join cases. - Fix handling of SELECT FOR UPDATE in a sub-SELECT. This bug typically led to "cannot extract system attribute from virtual tuple" errors. - Fix selectivity estimation for text search to account for NULLs. - Fix get_actual_variable_range() to support hypothetical indexes injected by an index adviser plugin. - Fix PL/Python memory leak involving array slices. - Allow libpq's SSL initialization to succeed when user's home directory is unavailable. If the SSL mode is such that a root certificate file is not required, there is no need to fail. This change restores the behavior to what it was in pre-9.0 releases. - Fix libpq to return a useful error message for errors detected in conninfo_array_parse. - Fix ecpg preprocessor's handling of float constants. - Fix parallel pg_restore to handle comments on POST_DATA items correctly. - Fix pg_restore to cope with long lines (over 1KB) in TOC files. - Put in more safeguards against crashing due to division-by-zero with overly enthusiastic compiler optimization. (Closes: #616180) * debian/control: Build debug package. (Closes: #551880) * debian/control, debian/rules: Drop usage of pycentral. We don't ship any Python extension/module, so we don't need a python helper at all. (Closes: #616949) postgresql-9.0 (9.0.3-1) unstable; urgency=low * New upstream security/bug fix release: - Fix buffer overrun in "contrib/intarray"'s input function for the query_int type. This bug is a security risk since the function's return address could be overwritten. Thanks to Apple Inc's security team for reporting this issue and supplying the fix. (CVE-2010-4015) - Before exiting walreceiver, ensure all the received WAL is fsync'd to disk. Otherwise the standby server could replay some un-synced WAL, conceivably leading to data corruption if the system crashes just at that point. - Avoid excess fsync activity in walreceiver. - Make "ALTER TABLE" revalidate uniqueness and exclusion constraints when needed. This was broken in 9.0 by a change that was intended to suppress revalidation during "VACUUM FULL" and "CLUSTER", but unintentionally affected "ALTER TABLE" as well. - Fix EvalPlanQual for "UPDATE" of an inheritance tree in which the tables are not all alike. Any variation in the table row types (including dropped columns present in only some child tables) would confuse the EvalPlanQual code, leading to misbehavior or even crashes. Since EvalPlanQual is only executed during concurrent updates to the same row, the problem was only seen intermittently. - Avoid failures when "EXPLAIN" tries to display a simple-form CASE expression. If the CASE's test expression was a constant, the planner could simplify the CASE into a form that confused the expression-display code, resulting in "unexpected CASE WHEN clause" errors. - Fix assignment to an array slice that is before the existing range of subscripts. If there was a gap between the newly added subscripts and the first pre-existing subscript, the code miscalculated how many entries needed to be copied from the old array's null bitmap, potentially leading to data corruption or crash. - Avoid unexpected conversion overflow in planner for very distant date values. The date type supports a wider range of dates than can be represented by the timestamp types, but the planner assumed it could always convert a date to timestamp with impunity. - Fix PL/Python crash when an array contains null entries. - Remove ecpg's fixed length limit for constants defining an array dimension. - Fix erroneous parsing of tsquery values containing ... & !(subexpression) | ... . Queries containing this combination of operators were not executed correctly. The same error existed in "contrib/intarray"'s query_int type and "contrib/ltree"'s ltxtquery type. - Fix bug in "contrib/seg"'s GiST picksplit algorithm. This could result in considerable inefficiency, though not actually incorrect answers, in a GiST index on a seg column. If you have such an index, consider "REINDEX"ing it after installing this update. (This is identical to the bug that was fixed in "contrib/cube" in the previous update.) postgresql-9.0 (9.0.2-1) unstable; urgency=low * New upstream bug fix release: - Force the default wal_sync_method to be fdatasync on Linux. The default on Linux has actually been fdatasync for many years, but recent kernel changes caused PostgreSQL to choose open_datasync instead. This choice did not result in any performance improvement, and caused outright failures on certain filesystems, notably ext4 with the data=journal mount option. - Fix "too many KnownAssignedXids" error during Hot Standby replay. - Fix race condition in lock acquisition during Hot Standby. - Avoid unnecessary conflicts during Hot Standby. This fixes some cases where replay was considered to conflict with standby queries (causing delay of replay or possibly cancellation of the queries), but there was no real conflict. - Fix assorted bugs in WAL replay logic for GIN indexes. This could result in "bad buffer id: 0" failures or corruption of index contents during replication. - Fix recovery from base backup when the starting checkpoint WAL record is not in the same WAL segment as its redo point. - Fix corner-case bug when streaming replication is enabled immediately after creating the master database cluster. - Fix persistent slowdown of autovacuum workers when multiple workers remain active for a long time. The effective vacuum_cost_limit for an autovacuum worker could drop to nearly zero if it processed enough tables, causing it to run extremely slowly. - Fix long-term memory leak in autovacuum launcher. - Avoid failure when trying to report an impending transaction wraparound condition from outside a transaction. This oversight prevented recovery after transaction wraparound got too close, because database startup processing would fail. - Add support for detecting register-stack overrun on IA64. The IA64 architecture has two hardware stacks. Full prevention of stack-overrun failures requires checking both. - Add a check for stack overflow in copyObject(). Certain code paths could crash due to stack overflow given a sufficiently complex query. - Fix detection of page splits in temporary GiST indexes. It is possible to have a "concurrent" page split in a temporary index, if for example there is an open cursor scanning the index when an insertion is done. GiST failed to detect this case and hence could deliver wrong results when execution of the cursor continued. - Fix error checking during early connection processing. The check for too many child processes was skipped in some cases, possibly leading to postmaster crash when attempting to add the new child process to fixed-size arrays. - Improve efficiency of window functions. Certain cases where a large number of tuples needed to be read in advance, but work_mem was large enough to allow them all to be held in memory, were unexpectedly slow. percent_rank(), cume_dist() and ntile() in particular were subject to this problem. - Avoid memory leakage while "ANALYZE"'ing complex index expressions. - Ensure an index that uses a whole-row Var still depends on its table. An index declared like create index i on t (foo(t.-)) would not automatically get dropped when its table was dropped. - Add missing support in "DROP OWNED BY" for removing foreign data wrapper/server privileges belonging to a user. - Do not "inline" a SQL function with multiple OUT parameters. This avoids a possible crash due to loss of information about the expected result rowtype. - Fix crash when inline-ing a set-returning function whose argument list contains a reference to an inline-able user function. - Behave correctly if ORDER BY, LIMIT, FOR UPDATE, or WITH is attached to the VALUES part of INSERT ... VALUES. - Make the OFF keyword unreserved. This prevents problems with using off as a variable name in PL/pgSQL. That worked before 9.0, but was now broken because PL/pgSQL now treats all core reserved words as reserved. - Fix constant-folding of COALESCE() expressions. The planner would sometimes attempt to evaluate sub-expressions that in fact could never be reached, possibly leading to unexpected errors. - Fix "could not find pathkey item to sort" planner failure with comparison of whole-row Vars. - Fix postmaster crash when connection acceptance (accept() or one of the calls made immediately after it) fails, and the postmaster was compiled with GSSAPI support. - Retry after receiving an invalid response packet from a RADIUS authentication server. This fixes a low-risk potential denial of service condition. - Fix missed unlink of temporary files when log_temp_files is active. If an error occurred while attempting to emit the log message, the unlink was not done, resulting in accumulation of temp files. - Add print functionality for InhRelation nodes. This avoids a failure when debug_print_parse is enabled and certain types of query are executed. - Fix incorrect calculation of distance from a point to a horizontal line segment. This bug affected several different geometric distance-measurement operators. - Fix incorrect calculation of transaction status in ecpg. - Fix errors in psql's Unicode-escape support. - Speed up parallel pg_restore when the archive contains many large objects (blobs). - Fix PL/pgSQL's handling of "simple" expressions to not fail in recursion or error-recovery cases. - Fix PL/pgSQL's error reporting for no-such-column cases. As of 9.0, it would sometimes report "missing FROM-clause entry for table foo" when "record foo has no field bar" would be more appropriate. - Fix PL/Python to honor typmod (i.e., length or precision restrictions) when assigning to tuple fields. This fixes a regression from 8.4. - Fix PL/Python's handling of set-returning functions. Attempts to call SPI functions within the iterator generating a set result would fail. - Fix bug in "contrib/cube"'s GiST picksplit algorithm. This could result in considerable inefficiency, though not actually incorrect answers, in a GiST index on a cube column. If you have such an index, consider "REINDEX"ing it after installing this update. - Don't emit "identifier will be truncated" notices in "contrib/dblink" except when creating new connections. - Fix potential coredump on missing public key in "contrib/pgcrypto". - Fix buffer overrun in "contrib/pg_upgrade". - Fix memory leak in "contrib/xml2"'s XPath query functions. postgresql-9.0 (9.0.1-2) unstable; urgency=low * debian/control: Build against libedit instead of libreadline. We can't simultaneously link against readline (GPL) and libssl (incompatible with GPL). (Closes: #603599) postgresql-9.0 (9.0.1-1) unstable; urgency=low * New upstream security/bug fix release: - Use a separate interpreter for each calling SQL userid in PL/Perl and PL/Tcl. This change prevents security problems that can be caused by subverting Perl or Tcl code that will be executed later in the same session under another SQL user identity (for example, within a SECURITY DEFINER function). Most scripting languages offer numerous ways that that might be done, such as redefining standard functions or operators called by the target function. Without this change, any SQL user with Perl or Tcl language usage rights can do essentially anything with the SQL privileges of the target function's owner. The cost of this change is that intentional communication among Perl and Tcl functions becomes more difficult. To provide an escape hatch, PL/PerlU and PL/TclU functions continue to use only one interpreter per session. This is not considered a security issue since all such functions execute at the trust level of a database superuser already. It is likely that third-party procedural languages that claim to offer trusted execution have similar security issues. We advise contacting the authors of any PL you are depending on for security-critical purposes. Our thanks to Tim Bunce for pointing out this issue (CVE-2010-3433). - Improve pg_get_expr() security fix so that the function can still be used on the output of a sub-select. - Fix incorrect placement of placeholder evaluation. This bug could result in query outputs being non-null when they should be null, in cases where the inner side of an outer join is a sub-select with non-strict expressions in its output list. - Fix join removal's handling of placeholder expressions. - Fix possible duplicate scans of UNION ALL member relations. - Prevent infinite loop in ProcessIncomingNotify() after unlistening. - Prevent show_session_authorization() from crashing within autovacuum processes. - Re-allow input of Julian dates prior to 0001-01-01 AD. Input such as 'J100000'::date worked before 8.4, but was unintentionally broken by added error-checking. - Make psql recognize "DISCARD ALL" as a command that should not be encased in a transaction block in autocommit-off mode. - Update build infrastructure and documentation to reflect the source code repository's move from CVS to Git. postgresql-9.0 (9.0.0-3) unstable; urgency=low * debian/postgresql-9.0.preinst: Add missing debhelper token. * debian/rules: debian/rules: Set DPKG_GENSYMBOLS_CHECK_LEVEL to 4 to point out outdated .symbols files more strongly. * Add symbols files for libecpg-compat3, libecpg6, and libpgtypes3. postgresql-9.0 (9.0.0-2) unstable; urgency=low * debian/rules: Reenable building with -O1 on sparc and alpha, floating point with -O2 is still broken there. * Drop debian/libpq5.shlibs, replace it with a proper debian/libpq5.symbols. This keeps the reverse dependencies of libpq5 to >= 8.4, unless they use one of the four new functions. postgresql-9.0 (9.0.0-1) unstable; urgency=low * Final 9.0 release, upload to unstable (will not go into Squeeze, though). * debian/postgresql-9.0.preinst: Add missing debhelper token. * debian/control: Bump Standards-Version to 3.9.1; no changes necessary. * debian/control: Build the versionless metapackages now and point them to 9.0. * debian/control: Fix Vcs-* to point to 9.0 branch. * debian/rules: Drop special-case building with -O1 on sparc and alpha, let's see how the current compiler does. postgresql-9.0 (9.0~rc1-1) experimental; urgency=low * First 9.0 release candidate. postgresql-9.0 (9.0~beta4-1) experimental; urgency=low * New upstream beta release. postgresql-9.0 (9.0~beta3-2) experimental; urgency=low * Migrate to a common init script for all server versions, to avoid providing the "postgresql" service in multiple packages (which causes insserv to complain bitterly): - Drop debian/postgresql-9.0.init. - debian/control: Bump dependency to postgresql-common to ensure we have a common /etc/init.d/postgresql init script. - debian/postgresql-9.0.preinst: Remove/rename our init script on upgrade. - debian/postgresql-9.0.prerm: Call stop_version on upgrade/removal. - debian/rules: Drop dh_installinit arguments. - (Closes: #589523) postgresql-9.0 (9.0~beta3-1) experimental; urgency=low * New upstream beta release. * debian/postgresql-contrib-9.0.install: Add the new pg_archivecleanup. postgresql-9.0 (9.0~beta2-1) experimental; urgency=low * New upstream beta release. * debian/postgresql-9.0.install: Install pg_upgrade. * debian/control: Set back maintainer to me, but keep Peter Eisentraut as Uploader. postgresql-9.0 (9.0~beta1-1) experimental; urgency=low [ Peter Eisentraut ] * Create 9.0 package based on 8.4 packaging trunk. Don't build versionless metapackages for 9.0 yet. - Adjusted 11-pg_regress-socketpath.patch - Obsoletes 03-sh-architecture.patch * Dropped obsolete documentation build. * debian/rules: Use make world/install-world targets, obsoletes 01-build-contrib.patch. * debian/watch: Adjusted for alpha releases. [ Martin Pitt ] * Update to upstream beta 1 release. * 07-relax-sslkey-permscheck.patch: Add parentheses around || .. && construct to avoid a compiler warning (which turns into an error when building with -Werror). Also add a DEP3 compatible header. * 14-pg_config-paths.patch: Drop now unused "ret" variable (fix FTBFS with -Werror). Add a DEP3 compatible header. * debian/control: Bump p-common dependency to >= 107~ to ensure support for 9.0. * debian/disable-root-check.patch: Refresh to apply cleanly. * Convert source package to "3.0 (quilt)" format. * Refresh patches to apply without fuzz. * debian/control: Bump Standards-Version to 3.8.4 (no changes necessary). * debian/patches/: Add DEP-3 compatible patch descriptions. * Merge 08-pkglibdir.patch, 09-server-includedir.patch, and 14-pg_config-paths.patch into 50-per-version-dirs.patch, since they really belong together. * Merge 06-libpq-defaultsocketdir.patch and 11-pg_regress-socketpath.patch into 51-default-sockets-in-var.patch, they really belong together. * Re-enumerate 10-tutorial-README.patch and 13-pg_service.conf_directory_doc.patch to 5x-*, since they are Debian specific. * Merge 02-pager.patch and 12-psql-sensible-editor.patch into 54-debian-alternatives-for-external-tools.patch. * Re-enumerate remaining patches. -- Martin Pitt <email address hidden> Tue, 03 May 2011 07:46:52 +0000
Upload details
- Uploaded by:
- Martin Pitt
- Uploaded to:
- Oneiric
- Original maintainer:
- Martin Pitt
- Architectures:
- any
- Section:
- database
- Urgency:
- Medium Urgency
See full publishing history Publishing
Series | Published | Component | Section |
---|
Downloads
File | Size | SHA-256 Checksum |
---|---|---|
postgresql-9.0_9.0.4.orig.tar.bz2 | 13.4 MiB | 30572706e3176228415991895e63a8b77343a5abad11407961cfd08790be9e84 |
postgresql-9.0_9.0.4-1.debian.tar.gz | 25.1 KiB | 219276045aa5a86889385497ad88c5b2efbdb85c888df083eadf7fc83dcde621 |
postgresql-9.0_9.0.4-1.dsc | 2.4 KiB | 45a8a51d3a7e3b068fd2cc8e7935551aeaf0438a5fad7043b1e309f1b15d76c1 |
Binary packages built by this source
- libecpg-compat3: No summary available for libecpg-compat3 in ubuntu oneiric.
No description available for libecpg-compat3 in ubuntu oneiric.
- libecpg-dev: No summary available for libecpg-dev in ubuntu oneiric.
No description available for libecpg-dev in ubuntu oneiric.
- libecpg6: No summary available for libecpg6 in ubuntu oneiric.
No description available for libecpg6 in ubuntu oneiric.
- libpgtypes3: No summary available for libpgtypes3 in ubuntu oneiric.
No description available for libpgtypes3 in ubuntu oneiric.
- libpq-dev: No summary available for libpq-dev in ubuntu oneiric.
No description available for libpq-dev in ubuntu oneiric.
- libpq5: No summary available for libpq5 in ubuntu oneiric.
No description available for libpq5 in ubuntu oneiric.
- postgresql: No summary available for postgresql in ubuntu oneiric.
No description available for postgresql in ubuntu oneiric.
- postgresql-9.0: No summary available for postgresql-9.0 in ubuntu oneiric.
No description available for postgresql-9.0 in ubuntu oneiric.
- postgresql-9.0-dbg: No summary available for postgresql-9.0-dbg in ubuntu oneiric.
No description available for postgresql-9.0-dbg in ubuntu oneiric.
- postgresql-client: No summary available for postgresql-client in ubuntu oneiric.
No description available for postgresql-client in ubuntu oneiric.
- postgresql-client-9.0: No summary available for postgresql-client-9.0 in ubuntu oneiric.
No description available for postgresql-
client- 9.0 in ubuntu oneiric.
- postgresql-contrib: No summary available for postgresql-contrib in ubuntu oneiric.
No description available for postgresql-contrib in ubuntu oneiric.
- postgresql-contrib-9.0: No summary available for postgresql-contrib-9.0 in ubuntu oneiric.
No description available for postgresql-
contrib- 9.0 in ubuntu oneiric.
- postgresql-doc: No summary available for postgresql-doc in ubuntu oneiric.
No description available for postgresql-doc in ubuntu oneiric.
- postgresql-doc-9.0: No summary available for postgresql-doc-9.0 in ubuntu oneiric.
No description available for postgresql-doc-9.0 in ubuntu oneiric.
- postgresql-plperl-9.0: No summary available for postgresql-plperl-9.0 in ubuntu oneiric.
No description available for postgresql-
plperl- 9.0 in ubuntu oneiric.
- postgresql-plpython-9.0: No summary available for postgresql-plpython-9.0 in ubuntu oneiric.
No description available for postgresql-
plpython- 9.0 in ubuntu oneiric.
- postgresql-pltcl-9.0: No summary available for postgresql-pltcl-9.0 in ubuntu oneiric.
No description available for postgresql-
pltcl-9. 0 in ubuntu oneiric.
- postgresql-server-dev-9.0: No summary available for postgresql-server-dev-9.0 in ubuntu oneiric.
No description available for postgresql-
server- dev-9.0 in ubuntu oneiric.