--- postgresql-8.4-8.4.7.orig/debian/libpq5.shlibs +++ postgresql-8.4-8.4.7/debian/libpq5.shlibs @@ -0,0 +1 @@ +libpq 5 libpq5 (>= 8.4~0cvs20090328) --- postgresql-8.4-8.4.7.orig/debian/postgresql-contrib-8.4.postinst +++ postgresql-8.4-8.4.7/debian/postgresql-contrib-8.4.postinst @@ -0,0 +1,11 @@ +#!/bin/sh -e + +VERSION=8.4 + +. /usr/share/postgresql-common/maintscripts-functions + +if [ "$1" = configure ]; then + configure_contrib_version $VERSION "$2" +fi + +#DEBHELPER# --- postgresql-8.4-8.4.7.orig/debian/postgresql-8.4.install +++ postgresql-8.4-8.4.7/debian/postgresql-8.4.install @@ -0,0 +1,30 @@ +usr/lib/postgresql/8.4/bin/initdb +usr/lib/postgresql/8.4/bin/pg_controldata +usr/lib/postgresql/8.4/bin/pg_ctl +usr/lib/postgresql/8.4/bin/pg_resetxlog +usr/lib/postgresql/8.4/bin/postgres +usr/lib/postgresql/8.4/bin/postmaster +usr/lib/postgresql/8.4/lib/*_and_*.so +usr/lib/postgresql/8.4/lib/plpgsql.so +usr/lib/postgresql/8.4/lib/dict_snowball.so +usr/lib/postgresql/8.4/lib/tsearch2.so +usr/share/locale/*/LC_MESSAGES/initdb-8.4.mo +usr/share/locale/*/LC_MESSAGES/pg_controldata-8.4.mo +usr/share/locale/*/LC_MESSAGES/pg_ctl-8.4.mo +usr/share/locale/*/LC_MESSAGES/pg_resetxlog-8.4.mo +usr/share/locale/*/LC_MESSAGES/postgres-8.4.mo +usr/share/locale/*/LC_MESSAGES/plpgsql-8.4.mo +usr/share/postgresql/8.4/man/man1/initdb.1 +usr/share/postgresql/8.4/man/man1/pg_controldata.1 +usr/share/postgresql/8.4/man/man1/pg_ctl.1 +usr/share/postgresql/8.4/man/man1/pg_resetxlog.1 +usr/share/postgresql/8.4/man/man1/postgres.1 +usr/share/postgresql/8.4/man/man1/postmaster.1 +usr/share/postgresql/8.4/timezonesets/* +usr/share/postgresql/8.4/tsearch_data +usr/share/postgresql/8.4/*.sql +usr/share/postgresql/8.4/*.conf.sample +usr/share/postgresql/8.4/postgres.bki +usr/share/postgresql/8.4/postgres.description +usr/share/postgresql/8.4/postgres.shdescription +usr/share/postgresql/8.4/sql_features.txt --- postgresql-8.4-8.4.7.orig/debian/libecpg-dev.manpages +++ postgresql-8.4-8.4.7/debian/libecpg-dev.manpages @@ -0,0 +1 @@ +debian/tmp/usr/share/postgresql/8.4/man/man1/ecpg.1 --- postgresql-8.4-8.4.7.orig/debian/libpq-dev.install +++ postgresql-8.4-8.4.7/debian/libpq-dev.install @@ -0,0 +1,19 @@ +usr/include/postgresql/internal/* +usr/include/postgresql/libpq-fe.h +usr/include/postgresql/libpq-events.h +usr/include/postgresql/libpq/libpq-fs.h +usr/include/postgresql/pg_config*.h +usr/include/postgresql/postgres_ext.h +usr/include/postgresql/8.4/server/catalog/pg_type.h /usr/include/postgresql/catalog +usr/include/postgresql/8.4/server/catalog/genbki.h /usr/include/postgresql/catalog +usr/include/postgresql/8.4/server/nodes/nodes.h /usr/include/postgresql/nodes +usr/include/postgresql/8.4/server/utils/{elog,errcodes,palloc}.h /usr/include/postgresql/utils +usr/include/postgresql/8.4/server/{c,pg_config,pg_config_manual,pg_config_os,port,pg_trace}.h /usr/include/postgresql/ +usr/include/postgresql/8.4/server/postgres{,_fe,_ext}.h /usr/include/postgresql/ +usr/include/postgresql/8.4/server/mb/pg_wchar.h /usr/include/postgresql/mb +usr/lib/libpgport.a +usr/lib/libpq.a +usr/lib/libpq.so +usr/lib/postgresql/8.4/bin/pg_config usr/bin +usr/share/postgresql/8.4/man/man1/pg_config.1 +usr/share/locale/*/LC_MESSAGES/pg_config-8.4.mo --- postgresql-8.4-8.4.7.orig/debian/postgresql-doc-8.4.dirs +++ postgresql-8.4-8.4.7/debian/postgresql-doc-8.4.dirs @@ -0,0 +1 @@ +/usr/share/doc/postgresql-doc-8.4/tutorial --- postgresql-8.4-8.4.7.orig/debian/postgresql-8.4.postrm +++ postgresql-8.4-8.4.7/debian/postgresql-8.4.postrm @@ -0,0 +1,60 @@ +#!/bin/sh -e + +#DEBHELPER# + +VERSION=8.4 + +clean_dir() { + if [ -d "$1" ] && [ ! -L "$1" ]; then + rmdir "$1" >/dev/null 2>/dev/null || true + fi +} + +drop_cluster() { + # if we still have the postgresql-common package, use it to also shutdown + # server, etc.; otherwise just remove the directories + if [ -x /usr/bin/pg_dropcluster ]; then + pg_dropcluster --stop-server $VERSION "$1" + else + # remove data directory + PGDATALINK="/etc/postgresql/$VERSION/$1/pgdata" + if [ -e "$PGDATALINK" ]; then + rm -rf $(readlink -f "$PGDATALINK") "$PGDATALINK" + else + rm -rf "/var/lib/postgresql/$VERSION/$1/" + fi + + # remove log file, including rotated ones + LOGLINK="/etc/postgresql/$VERSION/$1/log" + if [ -e "$LOGLINK" ]; then + LOG=$(readlink -f "$LOGLINK") + rm -f $LOG* "$LOGLINK" + else + rm -f /var/log/postgresql/postgresql-$VERSION-"$1".log* + fi + + # remove conffiles + for f in pg_hba.conf pg_ident.conf postgresql.conf start.conf environment; do + rm -f /etc/postgresql/$VERSION/"$1"/$f + done + + clean_dir /etc/postgresql/$VERSION/"$1" + fi +} + +if [ "$1" = purge ]; then + [ -d "/etc/postgresql/$VERSION" ] || exit 0 + if [ "$(ls /etc/postgresql/$VERSION)" ]; then + for c in /etc/postgresql/$VERSION/*; do + [ -e "$c/postgresql.conf" ] || continue + cluster=$(basename "$c") + echo "Dropping cluster $cluster..." + drop_cluster "$cluster" + done + fi + + clean_dir /etc/postgresql/$VERSION + clean_dir /etc/postgresql + clean_dir /var/lib/postgresql/$VERSION + clean_dir /var/lib/postgresql +fi --- postgresql-8.4-8.4.7.orig/debian/postgresql-client-8.4.postinst +++ postgresql-8.4-8.4.7/debian/postgresql-client-8.4.postinst @@ -0,0 +1,11 @@ +#!/bin/sh -e + +VERSION=8.4 + +. /usr/share/postgresql-common/maintscripts-functions + +if [ "$1" = configure ]; then + configure_client_version $VERSION "$2" +fi + +#DEBHELPER# --- postgresql-8.4-8.4.7.orig/debian/libecpg6.install +++ postgresql-8.4-8.4.7/debian/libecpg6.install @@ -0,0 +1,2 @@ +usr/lib/libecpg.so.6* +/usr/share/locale/*/*/ecpg*.mo --- postgresql-8.4-8.4.7.orig/debian/postgresql-doc-8.4.doc-base +++ postgresql-8.4-8.4.7/debian/postgresql-doc-8.4.doc-base @@ -0,0 +1,13 @@ +Document: postgresql-8.4 +Title: PostgreSQL 8.4 Documentation +Author: The PostgreSQL Global Development Group +Abstract: The documentation for the PostgreSQL database management system, + version 8.4. PostgreSQL is a sophisticated Object-Relational DBMS, supporting + almost all SQL constructs, including subselects, transactions, and + user-defined types and functions. +Section: Data Management + +Format: HTML +Index: /usr/share/doc/postgresql-doc-8.4/html/index.html +Files: /usr/share/doc/postgresql-doc-8.4/html/* + --- postgresql-8.4-8.4.7.orig/debian/rules +++ postgresql-8.4-8.4.7/debian/rules @@ -0,0 +1,159 @@ +#!/usr/bin/make -f +TCL_VER := 8.5 +MAJOR_VER := 8.4 + +include /usr/share/cdbs/1/rules/simple-patchsys.mk +include /usr/share/cdbs/1/class/autotools.mk +include /usr/share/cdbs/1/rules/debhelper.mk + +LDFLAGS+= -Wl,--as-needed +CFLAGS+= -fPIC + +ifneq ($(findstring $(DEB_BUILD_ARCH), sparc alpha),) +# sparc and alpha's gcc currently miscompiles; see +# http://lists.debian.org/debian-alpha/2007/11/msg00025.html + CFLAGS+=-O1 +endif + +export DEB_BUILD_HARDENING=1 + +# build should fail on test suite failures on all arches +TESTSUITE_FAIL_CMD=exit 1 + +DEB_DH_INSTALL_SOURCEDIR=debian/tmp +DEB_CONFIGURE_EXTRA_FLAGS := --mandir=\$${prefix}/share/postgresql/$(MAJOR_VER)/man \ + --with-docdir=\$${prefix}/share/doc/postgresql-doc-$(MAJOR_VER) \ + --sysconfdir=/etc/postgresql-common \ + --datadir=\$${prefix}/share/postgresql/$(MAJOR_VER) \ + --bindir=\$${prefix}/lib/postgresql/$(MAJOR_VER)/bin \ + --includedir=\$${prefix}/include/postgresql/ \ + --enable-nls \ + --enable-integer-datetimes \ + --enable-thread-safety \ + --enable-debug \ + --disable-rpath \ + --with-tcl \ + --with-perl \ + --with-python \ + --with-pam \ + --with-krb5 \ + --with-gssapi \ + --with-openssl \ + --with-libxml \ + --with-libxslt \ + --with-ldap \ + --with-ossp-uuid \ + --with-gnu-ld \ + --with-tclconfig=/usr/lib/tcl$(TCL_VER) \ + --with-tkconfig=/usr/lib/tk$(TCL_VER) \ + --with-includes=/usr/include/tcl$(TCL_VER) \ + --with-system-tzdata=/usr/share/zoneinfo \ + --with-pgport=5432 \ + $(ARCH_OPTS) \ + CFLAGS='$(CFLAGS)' \ + LDFLAGS='$(LDFLAGS)' + +DEB_DH_MAKESHLIBS_ARGS := -Xusr/lib/postgresql/$(MAJOR_VER) +# disabled for CVS builds +#DEB_DH_INSTALLCHANGELOGS_ARGS := HISTORY +DEB_COMPRESS_EXCLUDE := .source .c + +# build documentation tarball if not present +common-configure-indep:: doc/postgres.tar.gz doc/man.tar.gz +common-configure-arch:: doc/postgres.tar.gz doc/man.tar.gz + +doc/postgres.tar.gz: + make -C doc/src postgres.tar + mv doc/src/postgres.tar doc/ + gzip -9 doc/postgres.tar + +doc/man.tar.gz: + chmod 755 debian/docbook2man-sgmlspl/* + make -C doc/src man.tar D2MDIR=`pwd`/debian/docbook2man-sgmlspl + mv doc/src/man.tar doc/ + gzip -9 doc/man.tar + +clean:: + rm -f doc/postgres.tar.gz doc/man.tar.gz + +common-binary-predeb-arch:: + # verify that all files are installed; ignore manpages, since + # they are handled by dh_installman + missing=`dh_install --sourcedir=debian/tmp --list-missing --no-act 2>&1 | grep -v man/man`; \ + if [ -n "$$missing" ]; then \ + echo "Not all files are installed:"; \ + echo "$$missing"; \ + exit 1; \ + fi + +common-post-build-arch:: + # generate POT files for translators + find -name nls.mk -exec sh -c "make -C \$$(dirname {}) init-po" \; + +common-post-build-indep:: + # build tutorial stuff + make -C src/tutorial NO_PGXS=1 + +install/postgresql-doc-$(MAJOR_VER):: + install src/tutorial/*.c src/tutorial/*.source src/tutorial/Makefile src/tutorial/README debian/$(cdbs_curpkg)/usr/share/doc/$(cdbs_curpkg)/tutorial + +binary-predeb/postgresql-$(MAJOR_VER):: +ifeq (, $(findstring nocheck, $(DEB_BUILD_OPTIONS))) + # patch away the "don't execute as root" check for the test + # suite; doing it here will ensure that the actual debs have + # the check. + set -e; \ + patch --no-backup-if-mismatch -p1 < debian/disable-root-check.patch; \ + make -C src/test/regress bigcheck || fail=1; \ + patch --no-backup-if-mismatch -Rp1 < debian/disable-root-check.patch; \ + if [ -n "$$fail" ]; then \ + for l in regression.diffs log/initdb.log log/postmaster.log; do \ + if [ -e src/test/regress/$$l ]; then \ + echo "********* $$l *******"; \ + cat src/test/regress/$$l; \ + fi; \ + done; \ + $(TESTSUITE_FAIL_CMD); \ + fi +endif + + # compress manpages + find debian/postgresql-$(MAJOR_VER)/usr/share/postgresql/$(MAJOR_VER)/man -type f -exec gzip -9 '{}' \; + +binary-predeb/postgresql-client-$(MAJOR_VER):: + find debian/postgresql-client-$(MAJOR_VER)/usr/share/postgresql/$(MAJOR_VER)/man -type f -exec gzip -9 '{}' \; + +binary-install/postgresql-plpython-$(MAJOR_VER):: + dh_pycentral -p$(cdbs_curpkg) + dh_python -p$(cdbs_curpkg) usr/lib/postgresql/$(MAJOR_VER)/lib + +# run tests in contrib in temporary test installations, using programs +# from local tree +contrib-check: + set -e; cd contrib; \ + for d in *; do \ + [ -d $$d/sql ] || continue; \ + echo "============== Running tests in $$d"; \ + (cd $$d; \ + if ! ../../src/test/regress/pg_regress --top-builddir=../.. --temp-install=tmp_check --dbname=contrib_regression `cd sql; ls *.sql | sed 's/.sql$$//'`; then \ + cat regression.diffs; \ + fi); \ + done + +# run tests in contrib in temporary test installation, using programs +# from system installation +contrib-installcheck: + # set up temporary db + rm -rf tmp_data + mkdir tmp_data + /usr/lib/postgresql/$(MAJOR_VER)/bin/initdb -D tmp_data + /usr/lib/postgresql/$(MAJOR_VER)/bin/pg_ctl -D tmp_data -l tmp_data/postgres.log -o '-k /tmp' start + # wait until it started up + while !/usr/lib/postgresql/$(MAJOR_VER)/bin/psql -h /tmp -l >/dev/null 2>&1; do sleep 1; done + sleep 1 + while !/usr/lib/postgresql/$(MAJOR_VER)/bin/psql -h /tmp -l >/dev/null 2>&1; do sleep 1; done + # run the tests + -cd contrib; make installcheck + /usr/lib/postgresql/$(MAJOR_VER)/bin/pg_ctl -D tmp_data stop + # find and print the regression diffs + find contrib/ -name regression.diffs -exec cat '{}' \; --- postgresql-8.4-8.4.7.orig/debian/copyright +++ postgresql-8.4-8.4.7/debian/copyright @@ -0,0 +1,110 @@ +This package was debianized by Martin Pitt . + +PostgreSQL was downloaded from ftp://ftp.postgresql.org/mirror/postgresql/src/ + +Please note that there are many other mirrors, listed on +http://www.postgresql.org/mirrors-ftp.html. + +Copyright. The following copyright applies to the entire distribution: + + PostgreSQL Data Base Management System + (formerly known as Postgres, then as Postgres95). + + Portions Copyright (c) 1996-2003, The PostgreSQL Global Development Group + + Portions Copyright (c) 1994, The Regents of the University of California + + Permission to use, copy, modify, and distribute this software and its + documentation for any purpose, without fee, and without a written agreement + is hereby granted, provided that the above copyright notice and this + paragraph and the following two paragraphs appear in all copies. + + IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR + DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS + DOCUMENTATION, EVEN IF THE UNIVERSITY OF CALIFORNIA HAS BEEN ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + + THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS + ON AN "AS IS" BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATIONS TO + PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + + +The following copyright applies to the regex code in the backend +(src/backend/regex): + + Copyright (c) 1998, 1999 Henry Spencer. All rights reserved. + + Development of this software was funded, in part, by Cray Research Inc., + UUNET Communications Services Inc., Sun Microsystems Inc., and Scriptics + Corporation, none of whom are responsible for the results. The author + thanks all of them. + + Redistribution and use in source and binary forms -- with or without + modification -- are permitted for any purpose, provided that + redistributions in source form retain this entire copyright notice and + indicate the origin and nature of any modifications. + + I'd appreciate being given credit for this package in the documentation + of software which uses it, but that is not a requirement. + + THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL + HENRY SPENCER BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; + OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +PostgreSQL adopted the code out of Tcl 8.4.1. Portions of regc_locale.c +and re_syntax.n were developed by Tcl developers other than Henry; these +files bear the Tcl copyright and license notice: + + This software is copyrighted by the Regents of the University of + California, Sun Microsystems, Inc., Scriptics Corporation, ActiveState + Corporation and other parties. The following terms apply to all files + associated with the software unless explicitly disclaimed in + individual files. + + The authors hereby grant permission to use, copy, modify, distribute, + and license this software and its documentation for any purpose, provided + that existing copyright notices are retained in all copies and that this + notice is included verbatim in any distributions. No written agreement, + license, or royalty fee is required for any of the authorized uses. + Modifications to this software may be copyrighted by their authors + and need not follow the licensing terms described here, provided that + the new terms are clearly indicated on the first page of each file where + they apply. + + IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY + FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES + ARISING OUT OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY + DERIVATIVES THEREOF, EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + + THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE + IS PROVIDED ON AN "AS IS" BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE + NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR + MODIFICATIONS. + + GOVERNMENT USE: If you are acquiring this software on behalf of the + U.S. government, the Government shall have only "Restricted Rights" + in the software and related documentation as defined in the Federal + Acquisition Regulations (FARs) in Clause 52.227.19 (c) (2). If you + are acquiring the software on behalf of the Department of Defense, the + software shall be classified as "Commercial Computer Software" and the + Government shall have only "Restricted Rights" as defined in Clause + 252.227-7013 (c) (1) of DFARs. Notwithstanding the foregoing, the + authors grant the U.S. Government and others acting in its behalf + permission to use and distribute the software in accordance with the + terms specified in this license. + +Subsequent modifications to the code by the PostgreSQL project follow +the same license terms as the rest of PostgreSQL. --- postgresql-8.4-8.4.7.orig/debian/libecpg-dev.install +++ postgresql-8.4-8.4.7/debian/libecpg-dev.install @@ -0,0 +1,12 @@ +usr/include/postgresql/ecpg*.h +usr/include/postgresql/informix/* +usr/include/postgresql/pgtypes_*.h +usr/include/postgresql/sql3types.h +usr/include/postgresql/sqlca.h +usr/lib/postgresql/8.4/bin/ecpg usr/bin +usr/lib/libecpg.so +usr/lib/libecpg_compat.so +usr/lib/libpgtypes.so +usr/lib/libecpg.a +usr/lib/libecpg_compat.a +usr/lib/libpgtypes.a --- postgresql-8.4-8.4.7.orig/debian/postgresql-8.4.postinst +++ postgresql-8.4-8.4.7/debian/postgresql-8.4.postinst @@ -0,0 +1,24 @@ +#!/bin/sh -e + +VERSION=8.4 + + +if [ "$1" = configure ]; then + # fix init script stop priority on upgrades + if dpkg --compare-versions "$2" le-nl "8.4~rc2-1"; then + echo "Fixing init script priorities..." + for l in 0 1 6; do + old=/etc/rc$l.d/K19postgresql-8.4 + new=/etc/rc$l.d/K21postgresql-8.4 + if [ -e $old ] && ! [ -e $new ]; then + mv $old $new + fi + done + fi + + . /usr/share/postgresql-common/maintscripts-functions + + configure_version $VERSION "$2" +fi + +#DEBHELPER# --- postgresql-8.4-8.4.7.orig/debian/postgresql-doc-8.4.install +++ postgresql-8.4-8.4.7/debian/postgresql-doc-8.4.install @@ -0,0 +1 @@ +usr/share/doc/postgresql/html usr/share/doc/postgresql-doc-8.4/ --- postgresql-8.4-8.4.7.orig/debian/changelog +++ postgresql-8.4-8.4.7/debian/changelog @@ -0,0 +1,771 @@ +postgresql-8.4 (8.4.7-0ubuntu0.10.10) maverick-security; urgency=low + + * New upstream security/bug fix release: (LP: #711318) + - 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) + - 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 pg_restore's text output for large objects (BLOBs) when + standard_conforming_strings is on. + Although restoring directly to a database worked correctly, string + escaping was incorrect if pg_restore was asked for SQL text output + and standard_conforming_strings had been enabled in the source + database. + - 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.) + + -- Martin Pitt Tue, 01 Feb 2011 21:59:15 +0100 + +postgresql-8.4 (8.4.6-0ubuntu10.10) maverick-proposed; urgency=low + + * New upstream bug fix release: (LP: #693157) + - 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 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 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. + - 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. + - 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. + - Behave correctly if ORDER BY, LIMIT, FOR UPDATE, or WITH is + attached to the VALUES part of INSERT ... VALUES. + - 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 postmaster crash when connection acceptance (accept() or one of + the calls made immediately after it) fails, and the postmaster was + compiled with GSSAPI support. + - 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 PL/pgSQL's handling of "simple" expressions to not fail in + recursion or error-recovery cases. + - 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 memory leak in "contrib/xml2"'s XPath query functions. + + -- Martin Pitt Tue, 21 Dec 2010 21:06:25 +0100 + +postgresql-8.4 (8.4.5-0ubuntu10.10) maverick-security; urgency=medium + + * New upstream security/bug fix update: (LP: #655293) + - 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). + - Prevent possible crashes in pg_get_expr() by disallowing it from + being called with an argument that is not one of the system catalog + columns it's intended to be used with. + - 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 possible duplicate scans of UNION ALL member relations. + - Fix "cannot handle unplanned sub-select" error. + This occurred when a sub-select contains a join alias reference + that expands into an expression containing another sub-select. + - Fix mishandling of whole-row Vars that reference a view or + sub-select and appear within a nested sub-select. + - Fix mishandling of cross-type IN comparisons. + This could result in failures if the planner tried to implement an + IN join with a sort-then-unique-then-plain-join plan. + - Fix computation of "ANALYZE" statistics for tsvector columns. + The original coding could produce incorrect statistics, leading to + poor plan choices later. + - Improve planner's estimate of memory used by array_agg(), + string_agg(), and similar aggregate functions. + The previous drastic underestimate could lead to out-of-memory + failures due to inappropriate choice of a hash-aggregation plan. + - Fix failure to mark cached plans as transient. + If a plan is prepared while "CREATE INDEX CONCURRENTLY" is in + progress for one of the referenced tables, it is supposed to be + re-planned once the index is ready for use. This was not happening + reliably. + - Reduce PANIC to ERROR in some occasionally-reported btree failure + cases, and provide additional detail in the resulting error + messages. + This should improve the system's robustness with corrupted indexes. + - Fix incorrect search logic for partial-match queries with GIN + indexes. + Cases involving AND/OR combination of several GIN index conditions + didn't always give the right answer, and were sometimes much slower + than necessary. + - Prevent show_session_authorization() from crashing within + autovacuum processes. + - Defend against functions returning setof record where not all the + returned rows are actually of the same rowtype. + - Fix possible corruption of pending trigger event lists during + subtransaction rollback. + This could lead to a crash or incorrect firing of triggers. + - Fix possible failure when hashing a pass-by-reference function + result. + - Improve merge join's handling of NULLs in the join columns. + A merge join can now stop entirely upon reaching the first NULL, if + the sort order is such that NULLs sort high. + - Take care to fsync the contents of lockfiles (both "postmaster.pid" + and the socket lockfile) while writing them. + This omission could result in corrupted lockfile contents if the + machine crashes shortly after postmaster start. That could in turn + prevent subsequent attempts to start the postmaster from + succeeding, until the lockfile is manually removed. + - Avoid recursion while assigning XIDs to heavily-nested + subtransactions. + The original coding could result in a crash if there was limited + stack space. + - Avoid holding open old WAL segments in the walwriter process. + The previous coding would prevent removal of no-longer-needed + segments. + - Fix log_line_prefix's %i escape, which could produce junk early in + backend startup. + - Prevent misinterpretation of partially-specified relation options + for TOAST tables. + In particular, fillfactor would be read as zero if any other + reloption had been set for the table, leading to serious bloat. + - Fix inheritance count tracking in "ALTER TABLE ... ADD CONSTRAINT" + - Fix possible data corruption in "ALTER TABLE ... SET TABLESPACE" + when archiving is enabled. + - Allow "CREATE DATABASE" and "ALTER DATABASE ... SET TABLESPACE" to + be interrupted by query-cancel. + - Improve "CREATE INDEX"'s checking of whether proposed index + expressions are immutable. + - Fix "REASSIGN OWNED" to handle operator classes and families. + - Fix possible core dump when comparing two empty tsquery values. + - Fix LIKE's handling of patterns containing % followed by _. + We've fixed this before, but there were still some + incorrectly-handled cases. + - 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. + - Fix PL/pgSQL to throw an error, not crash, if a cursor is closed + within a FOR loop that is iterating over that cursor. + - In PL/Python, defend against null pointer results from + PyCObject_AsVoidPtr and PyCObject_FromVoidPtr. + - In libpq, fix full SSL certificate verification for the case where + both host and hostaddr are specified. + - Make psql recognize "DISCARD ALL" as a command that should not be + encased in a transaction block in autocommit-off mode. + - Fix some issues in pg_dump's handling of SQL/MED objects. + Notably, pg_dump would always fail if run by a non-superuser, which + was not intended. + - Improve pg_dump and pg_restore's handling of non-seekable archive + files. + This is important for proper functioning of parallel restore. + - Improve parallel pg_restore's ability to cope with selective + restore (-L option). + The original code tended to fail if the -L file commanded a + non-default restore ordering. + - Fix ecpg to process data from RETURNING clauses correctly. + - Fix some memory leaks in ecpg. + - Improve "contrib/dblink"'s handling of tables containing dropped + columns. + - Fix connection leak after "duplicate connection name" errors in + "contrib/dblink". + - Fix "contrib/dblink" to handle connection names longer than 62 + bytes correctly. + - Add hstore(text, text) function to "contrib/hstore". + This function is the recommended substitute for the now-deprecated + => operator. It was back-patched so that future-proofed code can be + used with older server versions. Note that the patch will be + effective only after "contrib/hstore" is installed or reinstalled + in a particular database. Users might prefer to execute the "CREATE + FUNCTION" command by hand, instead. + - Update build infrastructure and documentation to reflect the source + code repository's move from CVS to Git. + * debian/postgresql-8.4.preinst: Add missing debhelper token. + * debian/control: Bump Standards-Version to 3.9.1 (no changes necessary). + + -- Martin Pitt Tue, 05 Oct 2010 20:41:08 +0200 + +postgresql-8.4 (8.4.4-2) unstable; 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-8.4.init. + - debian/control: Bump dependency to postgresql-common to ensure we have a + common /etc/init.d/postgresql init script. + - debian/postgresql-8.4.preinst: Remove/rename our init script on upgrade. + - debian/postgresql-8.4.prerm: Call stop_version on upgrade. + - debian/rules: Drop dh_installinit arguments. + - (Closes: #585890) + + -- Martin Pitt Mon, 19 Jul 2010 23:29:03 +0200 + +postgresql-8.4 (8.4.4-1) unstable; urgency=medium + + * Urgency medium due to security fixes. + * New upstream security/bug fix release: + - Enforce restrictions in plperl using an opmask applied to the whole + interpreter, instead of using "Safe.pm". + Recent developments have convinced us that "Safe.pm" is too + insecure to rely on for making plperl trustable. This change + removes use of "Safe.pm" altogether, in favor of using a separate + interpreter with an opcode mask that is always applied. Pleasant + side effects of the change include that it is now possible to use + Perl's strict pragma in a natural way in plperl, and that Perl's $a + and $b variables work as expected in sort routines, and that + function compilation is significantly faster. (CVE-2010-1169) + - Prevent PL/Tcl from executing untrustworthy code from pltcl_modules. + PL/Tcl's feature for autoloading Tcl code from a database table + could be exploited for trojan-horse attacks, because there was no + restriction on who could create or insert into that table. This + change disables the feature unless pltcl_modules is owned by a + superuser. (However, the permissions on the table are not checked, + so installations that really need a less-than-secure modules table + can still grant suitable privileges to trusted non-superusers.) + Also, prevent loading code into the unrestricted "normal" Tcl + interpreter unless we are really going to execute a pltclu + function. (CVE-2010-1170) + - Fix data corruption during WAL replay of ALTER ... SET TABLESPACE. + When archive_mode is on, ALTER ... SET TABLESPACE generates a WAL + record whose replay logic was incorrect. It could write the data to + the wrong place, leading to possibly-unrecoverable data corruption. + Data corruption would be observed on standby slaves, and could + occur on the master as well if a database crash and recovery + occurred after committing the ALTER and before the next checkpoint. + - Fix possible crash if a cache reset message is received during + rebuild of a relcache entry. + This error was introduced in 8.4.3 while fixing a related failure. + - Apply per-function GUC settings while running the language + validator for the function. This avoids failures if the function's code + is invalid without the setting; an example is that SQL functions may not + parse if the search_path is not correct. + - Do constraint exclusion for inherited "UPDATE" and "DELETE" target + tables when constraint_exclusion = partition. + Due to an oversight, this setting previously only caused constraint + exclusion to be checked in "SELECT" commands. + - Do not allow an unprivileged user to reset superuser-only parameter + settings. + Previously, if an unprivileged user ran ALTER USER ... RESET ALL + for himself, or ALTER DATABASE ... RESET ALL for a database he + owns, this would remove all special parameter settings for the user + or database, even ones that are only supposed to be changeable by a + superuser. Now, the "ALTER" will only remove the parameters that + the user has permission to change. + - Avoid possible crash during backend shutdown if shutdown occurs + when a CONTEXT addition would be made to log entries. + In some cases the context-printing function would fail because the + current transaction had already been rolled back when it came time + to print a log message. + - Fix erroneous handling of %r parameter in recovery_end_command. + The value always came out zero. + - Ensure the archiver process responds to changes in archive_command + as soon as possible. + - Fix pl/pgsql's CASE statement to not fail when the case expression + is a query that returns no rows. + - Update pl/perl's "ppport.h" for modern Perl versions. + - Fix assorted memory leaks in pl/python. + - Handle empty-string connect parameters properly in ecpg. + - Prevent infinite recursion in psql when expanding a variable that + refers to itself. + - Fix psql's \copy to not add spaces around a dot within \copy + (select ...). + Addition of spaces around the decimal point in a numeric literal + would result in a syntax error. + - Avoid formatting failure in psql when running in a locale context + that doesn't match the client_encoding. + - Fix unnecessary "GIN indexes do not support whole-index scans" + errors for unsatisfiable queries using "contrib/intarray" operators. + - Ensure that "contrib/pgstattuple" functions respond to cancel + interrupts promptly. + + -- Martin Pitt Sat, 15 May 2010 13:31:46 +0200 + +postgresql-8.4 (8.4.3-1) unstable; urgency=low + + * New upstream bug fix release: + - 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. + * Rebuild against libossp-uuid16. (Closes: #570108, LP: #538284) + + -- Martin Pitt Sat, 13 Mar 2010 16:44:46 +0100 + +postgresql-8.4 (8.4.2-2) unstable; urgency=low + + [ Alexander Sack ] + * Add 04-armel-tas.patch: Fix ftbfs on armel: Use gcc intrinsics rather + than assembler to implement tas (test and set). (LP: #497331) + + [ Martin Pitt ] + * Drop 15-dict-fallback-dir.patch: p-common 104 now directly creates the + names tsearch is looking for. Bump p-common dependency accordingly. + + -- Martin Pitt Tue, 19 Jan 2010 23:25:34 +0100 + +postgresql-8.4 (8.4.2-1) unstable; urgency=medium + + Medium urgency due to security fixes. + + [ Peter Eisentraut ] + * debian/control: Added Homepage + * debian/control: Added ${misc:Depends} on all packages, per lintian + * debian/control: Added versioned dependencies on the shared libraries used + by the libecpg-dev package + * debian/control: Removed obsolete build dependency bzip2 + * debian/control: Added Vcs fields + + [ Martin Pitt ] + * New upstream security/bug fix release: + - Protect against indirect security threats caused by index functions + changing session-local state. This change prevents allegedly-immutable + index functions from possibly subverting a superuser's session + (CVE-2009-4136). + - Reject SSL certificates containing an embedded null byte in the + common name (CN) field. This prevents unintended matching of a + certificate to a server or client name during SSL validation + (CVE-2009-4034). + - Fix hash index corruption. The 8.4 change that made hash indexes keep + entries sorted by hash value failed to update the bucket splitting and + compaction routines to preserve the ordering. So application of either + of those operations could lead to permanent corruption of an index, in + the sense that searches might fail to find entries that are present. To + deal with this, it is recommended to REINDEX any hash indexes you may + have after installing this update. + - Fix possible crash during backend-startup-time cache initialization. + - Avoid crash on empty thesaurus dictionary. + - Prevent signals from interrupting VACUUM at unsafe times. + - Fix possible crash due to integer overflow in hash table size + calculation. + - Fix crash if a DROP is attempted on an internally-dependent object. + - Fix very rare crash in inet/cidr comparisons. + - Ensure that shared tuple-level locks held by prepared transactions + are not ignored. + - Fix premature drop of temporary files used for a cursor that is + accessed within a subtransaction. + - Fix memory leak in syslogger process when rotating to a new CSV + logfile. + - Fix memory leak in postmaster when re-parsing "pg_hba.conf". + - Make FOR UPDATE/SHARE in the primary query not propagate into WITH + queries. + - Fix bug with a WITH RECURSIVE query immediately inside another one. + - Fix concurrency bug in hash indexes. + - Fix incorrect logic for GiST index page splits, when the split + depends on a non-first column of the index. + - Fix wrong search results for a multi-column GIN index with + fastupdate enabled. + - Fix bugs in WAL entry creation for GIN indexes. + - Don't error out if recycling or removing an old WAL file fails at + the end of checkpoint. + - Fix PAM password processing to be more robust. + The previous code is known to fail with the combination of the + Linux pam_krb5 PAM module with Microsoft Active Directory as the + domain controller. It might have problems elsewhere too, since it + was making unjustified assumptions about what arguments the PAM + stack would pass to it. + - Raise the maximum authentication token (Kerberos ticket) size in + GSSAPI and SSPI authentication methods. While the old 2000-byte limit + was more than enough for Unix Kerberos implementations, tickets issued + by Windows Domain Controllers can be much larger. + - Ensure that domain constraints are enforced in constructs like + ARRAY[...]::domain, where the domain is over an array type. + - Fix foreign-key logic for some cases involving composite-type + columns as foreign keys. + - Ensure that a cursor's snapshot is not modified after it is created. + - Fix CREATE TABLE to properly merge default expressions coming from + different inheritance parent tables. This used to work but was broken in + 8.4. + - Re-enable collection of access statistics for sequences. This used to + work but was broken in 8.3. + - Fix processing of ownership dependencies during CREATE OR REPLACE + FUNCTION. + - Fix incorrect handling of WHERE "x"="x" conditions. + In some cases these could get ignored as redundant, but they aren't + -- they're equivalent to "x" IS NOT NULL. + - Fix incorrect plan construction when using hash aggregation to + implement DISTINCT for textually identical volatile expressions + - Fix Assert failure for a volatile SELECT DISTINCT ON expression + - Fix ts_stat() to not fail on an empty tsvector value + - Make text search parser accept underscores in XML attributes + - Fix encoding handling in xml binary input. + If the XML header doesn't specify an encoding, we now assume UTF-8 + by default; the previous handling was inconsistent. + - Fix bug with calling plperl from plperlu or vice versa. + - Fix session-lifespan memory leak when a PL/Perl function is + redefined. + - Ensure that Perl arrays are properly converted to PostgreSQL arrays + when returned by a set-returning PL/Perl function. + - Fix rare crash in exception processing in PL/Python. + - Fix ecpg problem with comments in DECLARE CURSOR statements + - Fix ecpg to not treat recently-added keywords as reserved words + This affected the keywords CALLED, CATALOG, DEFINER, ENUM, + FOLLOWING, INVOKER, OPTIONS, PARTITION, PRECEDING, RANGE, SECURITY, + SERVER, UNBOUNDED, and WRAPPER. + - Re-allow regular expression special characters in psql's \df + function name parameter. + - Put FREEZE and VERBOSE options in the right order in the VACUUM + command that "contrib/vacuumdb" produces. + - Fix possible leak of connections when "contrib/dblink" encounters + an error + - Make the postmaster ignore any application_name parameter in + connection request packets, to improve compatibility with future + libpq versions. + * debian/control: libreadline5-dev → libreadline-dev. (Closes: #553831) + * Add 03-sh-architecture.patch: Support Renesas' SuperH architecture, thanks + Nobuhiro Iwamatsu! (Closes: #548847) + + -- Martin Pitt Mon, 14 Dec 2009 19:02:38 +0100 + +postgresql-8.4 (8.4.1-1) unstable; urgency=medium + + * Urgency medium due to security fix. + * New upstream security/bug fix release: + - Disallow "RESET ROLE" and "RESET SESSION AUTHORIZATION" inside + security-definer functions. This covers a case that was missed in the + previous patch that disallowed "SET ROLE" and "SET SESSION + AUTHORIZATION" inside security-definer functions. [CVE-2007-6600] + - Fix WAL page header initialization at the end of archive recovery. + This could lead to failure to process the WAL in a subsequent archive + recovery. + - Fix "cannot make new WAL entries during recovery" error. + - Fix problem that could make expired rows visible after a crash. + This bug involved a page status bit potentially not being set + correctly after a server crash. + - Make "LOAD" of an already-loaded loadable module into a no-op. + Formerly, "LOAD" would attempt to unload and re-load the module, + but this is unsafe and not all that useful. + - Make window function PARTITION BY and ORDER BY items always be + interpreted as simple expressions. + In 8.4.0 these lists were parsed following the rules used for + top-level GROUP BY and ORDER BY lists. But this was not correct per + the SQL standard, and it led to possible circularity. + - Fix several errors in planning of semi-joins. These led to wrong query + results in some cases where IN or EXISTS was used together with another + join. + - Fix handling of whole-row references to subqueries that are within + an outer join. An example is SELECT COUNT(ss.-) FROM ... LEFT JOIN + (SELECT ...) ss ON .... Here, ss.- would be treated as + ROW(NULL,NULL,...) for null-extended join rows, which is not the same as + a simple NULL. Now it is treated as a simple NULL. + - Fix locale handling with plperl. This bug could cause the server's + locale setting to change when a plperl function is called, leading to + data corruption. + - Fix handling of reloptions to ensure setting one option doesn't + force default values for others. + - Ensure that a "fast shutdown" request will forcibly terminate open + sessions, even if a "smart shutdown" was already in progress. + - Avoid memory leak for array_agg() in GROUP BY queries. + - Treat to_char(..., 'TH') as an uppercase ordinal suffix with + 'HH'/'HH12'. It was previously handled as 'th'. + - Include the fractional part in the result of EXTRACT(second) and + EXTRACT(milliseconds) for time and time with time zone inputs. + This has always worked for floating-point datetime configurations, + but was broken in the integer datetime code. + - Fix overflow for INTERVAL 'x ms' when "x" is more than 2 million + and integer datetimes are in use. + - Improve performance when processing toasted values in index scans. + This is particularly useful for PostGIS. + - Fix a typo that disabled commit_delay. + - Output early-startup messages to "postmaster.log" if the server is + started in silent mode. Previously such error messages were discarded, + leading to difficulty in debugging. + - Remove translated FAQs. They are now on the wiki. The main FAQ was moved + to the wiki some time ago. + - Fix pg_ctl to not go into an infinite loop if "postgresql.conf" is + empty. + - Fix several errors in pg_dump's --binary-upgrade mode. pg_dump + --binary-upgrade is used by pg_migrator. + - Fix "contrib/xml2"'s xslt_process() to properly handle the maximum + number of parameters (twenty). + - Improve robustness of libpq's code to recover from errors during + "COPY FROM STDIN". + - Avoid including conflicting readline and editline header files when + both libraries are installed. + - Work around gcc bug that causes "floating-point exception" instead + of "division by zero" on some platforms. + * debian/control: Bump Standards-Version to 3.8.3 (no changes necessary). + + -- Martin Pitt Sun, 06 Sep 2009 14:11:13 +0200 + +postgresql-8.4 (8.4.0-2) unstable; urgency=low + + * debian/libpq-dev.install: Ship catalog/genbki.h. (Closes: #536139) + * debian/rules: Drop --enable-cassert for final release. + + -- Martin Pitt Sat, 11 Jul 2009 16:59:35 +0200 + +postgresql-8.4 (8.4.0-1) unstable; urgency=low + + * Final 8.4.0 release. Major enhancements: + - Windowing Functions + - Common Table Expressions and Recursive Queries + - Default and variadic parameters for functions + - Parallel Restore + - Column Permissions + - Per-database locale settings + - Improved hash indexes + - Improved join performance for EXISTS and NOT EXISTS queries + - Easier-to-use Warm Standby + - Automatic sizing of the Free Space Map + - Visibility Map (greatly reduces vacuum overhead for slowly-changing + tables) + - Version-aware psql (backslash commands work against older servers) + - Support SSL certificates for user authentication + - Per-function runtime statistics + - Easy editing of functions in psql + - New contrib modules: pg_stat_statements, auto_explain, citext, + btree_gin + Upload to unstable, 8.4 is the new default. + * debian/control: Build the versionless metapackages and have them point to + 8.4. + + -- Martin Pitt Wed, 01 Jul 2009 17:41:41 +0200 + +postgresql-8.4 (8.4~rc1-1) experimental; urgency=low + + * First release candidate of 8.4. + + -- Martin Pitt Mon, 22 Jun 2009 09:17:52 +0200 + +postgresql-8.4 (8.4~beta2-2) experimental; urgency=low + + * Second public beta of 8.4. + * debian/control: Slightly lower the dependencies for postgresql-common to + >= 98~, so that backports also match. + + -- Martin Pitt Tue, 19 May 2009 14:03:37 +0200 + +postgresql-8.4 (8.4~beta1+cvs20090503-1) experimental; urgency=low + + * New upstream snapshot. + + -- Martin Pitt Tue, 05 May 2009 00:58:06 +0200 + +postgresql-8.4 (8.4~beta1-1) experimental; urgency=low + + * First public beta of 8.4. + * debian/*.install: Add new gettext translations. + * debian/control: Bump p-common dependency to >= 98 to ensure support for + 8.4. + * debian/rules: Build with --enable-cassert while in beta. + + -- Martin Pitt Mon, 27 Apr 2009 08:35:30 +0200 + +postgresql-8.4 (8.4~0cvs20090328-1) experimental; urgency=low + + * Package current trunk, which will become 8.4 in time. Packaging branched + from 8.3 packaging trunk. Move from cdbs' tarball.mk to bzr-builddeb. + * Drop obsolete patches: + - 03-gettext-domains.patch: Adopted upstream. + - 04-psql-passwordprompt.patch: Obsoleted by new psql -w option. + - 05-check-rlimits-nofile.patch: Adopted upstream. + * Update remaining patches for new upstream version. + * Add debian/docbook2man-sgmlspl/docbook2man-spec{.pl,_makelinks}: Current + Debian version in docbook-utils is way too old and broken (see #275715, + #271611), locally ship the current ones from upstream, in order to build + manpages. + * debian/rules: Build documentation and manpage tarballs if not present (as + with building from CVS). Add necessary build dependencies docbook-utils, + openjade, and docbook. + + -- Martin Pitt Fri, 20 Mar 2009 12:00:13 +0100 --- postgresql-8.4-8.4.7.orig/debian/postgresql-server-dev-8.4.install +++ postgresql-8.4-8.4.7/debian/postgresql-server-dev-8.4.install @@ -0,0 +1,3 @@ +usr/include/postgresql/8.4/* +usr/lib/postgresql/8.4/lib/pgxs/* +usr/lib/postgresql/8.4/bin/pg_config --- postgresql-8.4-8.4.7.orig/debian/control +++ postgresql-8.4-8.4.7/debian/control @@ -0,0 +1,296 @@ +Source: postgresql-8.4 +Section: database +Priority: optional +Maintainer: Ubuntu Developers +XSBC-Original-Maintainer: Martin Pitt +Standards-Version: 3.9.1 +XS-Python-Version: current +Build-Depends: debhelper (>= 5.0.37.2), cdbs (>= 0.4.43), perl (>= 5.8), + libperl-dev, tcl8.5-dev, libreadline-dev | libreadline5-dev, libssl-dev, + zlib1g-dev | libz-dev, libpam0g-dev | libpam-dev, libxml2-dev, libkrb5-dev, + libldap2-dev, libxslt1-dev, libossp-uuid-dev, python-dev, + python-central (>= 0.5), gettext, hardening-wrapper, + bison, flex, docbook-utils, openjade, docbook +Homepage: http://www.postgresql.org/ +Vcs-Browser: http://bazaar.launchpad.net/~pitti/postgresql/debian-8.4 +Vcs-Bzr: https://code.launchpad.net/~pitti/postgresql/debian-8.4 + +Package: libpq-dev +Architecture: any +Section: libdevel +Depends: ${misc:Depends}, ${shlibs:Depends}, libpq5 (= ${binary:Version}), libssl-dev, libkrb5-dev, comerr-dev +Conflicts: postgresql-dev (<< 7.5) +Replaces: postgresql-dev +Suggests: postgresql-doc-8.4 +Description: header files for libpq5 (PostgreSQL library) + Header files and static library for compiling C programs to link + with the libpq library in order to communicate with a PostgreSQL + database backend. + . + PostgreSQL is an object-relational SQL database management system. + +Package: libpq5 +Architecture: any +Section: libs +Depends: ${misc:Depends}, ${shlibs:Depends} +Description: PostgreSQL C client library + libpq is a C library that enables user programs to communicate with + the PostgreSQL database server. The server can be on another machine + and accessed through TCP/IP. This version of libpq is compatible + with servers from PostgreSQL 8.2 or later. + . + This package contains the run-time library, needed by packages using + libpq. + . + PostgreSQL is an object-relational SQL database management system. + +Package: libecpg6 +Architecture: any +Section: libs +Depends: ${misc:Depends}, ${shlibs:Depends} +Description: run-time library for ECPG programs + The libecpg shared library is used by programs built with ECPG + (Embedded PostgreSQL for C). + . + PostgreSQL is an object-relational SQL database management system. + +Package: libecpg-dev +Architecture: any +Section: libdevel +Depends: ${misc:Depends}, ${shlibs:Depends}, libpq-dev, libecpg6 (= ${binary:Version}), libecpg-compat3 (= ${binary:Version}), libpgtypes3 (= ${binary:Version}) +Conflicts: postgresql-dev, libecpg3-dev +Description: development files for ECPG (Embedded PostgreSQL for C) + This package contains the necessary files to build ECPG (Embedded + PostgreSQL for C) programs. It includes the development libraries + and the preprocessor program ecpg. + . + PostgreSQL is an object-relational SQL database management system. + . + Install this package if you want to write C programs with SQL statements + embedded in them (rather than run by an external process). + +Package: libecpg-compat3 +Architecture: any +Section: libs +Depends: ${misc:Depends}, ${shlibs:Depends} +Description: older version of run-time library for ECPG programs + The libecpg_compat shared library is used by programs built with ecpg. + (Embedded PostgreSQL for C). + . + PostgreSQL is an object-relational SQL database management system. + +Package: libpgtypes3 +Architecture: any +Section: libs +Depends: ${misc:Depends}, ${shlibs:Depends} +Description: shared library libpgtypes for PostgreSQL 8.4 + The libpgtypes shared library is used by programs built with ecpg. + (Embedded PostgreSQL for C). + . + PostgreSQL is an object-relational SQL database management system. + +Package: postgresql-8.4 +Architecture: any +Depends: ${misc:Depends}, ${shlibs:Depends}, postgresql-client-8.4, postgresql-common (>= 109~), tzdata, ssl-cert, locales +Suggests: oidentd | ident-server +Conflicts: postgresql (<< 7.5) +Description: 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. + +Package: postgresql-client-8.4 +Architecture: any +Depends: ${misc:Depends}, ${shlibs:Depends}, postgresql-client-common (>= 104~) +Conflicts: postgresql (<< 7.5) +Suggests: postgresql-8.4, postgresql-doc-8.4 +Provides: postgresql-client +Description: 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. + +Package: postgresql-server-dev-8.4 +Architecture: any +Section: libdevel +Depends: ${misc:Depends}, ${shlibs:Depends}, libpq-dev (>= 8.4~) +Description: 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. + +Package: postgresql-doc-8.4 +Architecture: all +Section: doc +Depends: ${misc:Depends} +Conflicts: postgresql-doc (<< 7.5) +Description: 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. + +Package: postgresql-contrib-8.4 +Architecture: any +Depends: postgresql-8.4, ${misc:Depends}, ${shlibs:Depends}, postgresql-common (>= 109~) +Suggests: libdbd-pg-perl +Conflicts: postgresql-contrib (<< 7.5) +Description: 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/ + IDENTITY + 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 + integrity. + 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. + +Package: postgresql-plperl-8.4 +Architecture: any +Depends: ${misc:Depends}, ${shlibs:Depends}, postgresql-8.4, perl +Description: 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. + +Package: postgresql-plpython-8.4 +Architecture: any +Depends: ${misc:Depends}, ${shlibs:Depends}, postgresql-8.4 +XB-Python-Version: ${python:Versions} +Description: 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. + +Package: postgresql-pltcl-8.4 +Architecture: any +Depends: ${misc:Depends}, ${shlibs:Depends}, postgresql-8.4 +Description: 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. + +Package: postgresql +Architecture: all +Depends: postgresql-8.4, ${misc:Depends} +Description: object-relational SQL database (supported version) + 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 always depends on the currently supported PostgreSQL + database server version. + +Package: postgresql-client +Architecture: all +Depends: postgresql-client-8.4, ${misc:Depends} +Description: front-end programs for PostgreSQL (supported version) + 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 package always depends on the currently supported database + client package for PostgreSQL. If you install PostgreSQL on a + standalone machine, you need the server package postgresql, 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. + +Package: postgresql-doc +Architecture: all +Section: doc +Depends: postgresql-doc-8.4, ${misc:Depends} +Description: documentation for the PostgreSQL database management system + This package contains all README files, user manual, and examples for + the currently supported PostgreSQL version. The manual is in HTML + format. + . + PostgreSQL is an object-relational SQL database management system. + +Package: postgresql-contrib +Architecture: all +Depends: postgresql-contrib-8.4, ${misc:Depends} +Description: additional facilities for PostgreSQL (supported version) + The PostgreSQL contrib package provides several additional features + for the PostgreSQL database. contrib often serves as a testbed for + features before they are adopted into PostgreSQL proper. + . + This package always depends on the currently supported contrib + package for PostgreSQL. + . + PostgreSQL is an object-relational SQL database management system. --- postgresql-8.4-8.4.7.orig/debian/libpgtypes3.install +++ postgresql-8.4-8.4.7/debian/libpgtypes3.install @@ -0,0 +1 @@ +usr/lib/libpgtypes.so.3* --- postgresql-8.4-8.4.7.orig/debian/libpq5.install +++ postgresql-8.4-8.4.7/debian/libpq5.install @@ -0,0 +1,2 @@ +usr/lib/libpq.so.5* +usr/share/locale/*/LC_MESSAGES/libpq*.mo --- postgresql-8.4-8.4.7.orig/debian/libpq-dev.manpages +++ postgresql-8.4-8.4.7/debian/libpq-dev.manpages @@ -0,0 +1 @@ +debian/tmp/usr/share/postgresql/8.4/man/man1/pg_config.1 --- postgresql-8.4-8.4.7.orig/debian/postgresql-client-8.4.install +++ postgresql-8.4-8.4.7/debian/postgresql-client-8.4.install @@ -0,0 +1,31 @@ +usr/lib/postgresql/8.4/bin/clusterdb +usr/lib/postgresql/8.4/bin/pg_dumpall +usr/lib/postgresql/8.4/bin/pg_dump +usr/lib/postgresql/8.4/bin/createdb +usr/lib/postgresql/8.4/bin/createlang +usr/lib/postgresql/8.4/bin/createuser +usr/lib/postgresql/8.4/bin/dropdb +usr/lib/postgresql/8.4/bin/droplang +usr/lib/postgresql/8.4/bin/dropuser +usr/lib/postgresql/8.4/bin/reindexdb +usr/lib/postgresql/8.4/bin/pg_restore +usr/lib/postgresql/8.4/bin/psql +usr/lib/postgresql/8.4/bin/vacuumdb +usr/share/postgresql/8.4/man/man1/pg_restore.1 +usr/share/postgresql/8.4/man/man1/psql.1 +usr/share/postgresql/8.4/man/man1/vacuumdb.1 +usr/share/postgresql/8.4/man/man1/clusterdb.1 +usr/share/postgresql/8.4/man/man1/pg_dump.1 +usr/share/postgresql/8.4/man/man1/pg_dumpall.1 +usr/share/postgresql/8.4/man/man1/createdb.1 +usr/share/postgresql/8.4/man/man1/createlang.1 +usr/share/postgresql/8.4/man/man1/createuser.1 +usr/share/postgresql/8.4/man/man1/dropdb.1 +usr/share/postgresql/8.4/man/man1/droplang.1 +usr/share/postgresql/8.4/man/man1/dropuser.1 +usr/share/postgresql/8.4/man/man1/reindexdb.1 +usr/share/postgresql/8.4/man/man7/*7 +usr/share/postgresql/8.4/psqlrc.sample +usr/share/locale/*/LC_MESSAGES/pg_dump-8.4.mo +usr/share/locale/*/LC_MESSAGES/psql-8.4.mo +usr/share/locale/*/LC_MESSAGES/pgscripts-8.4.mo --- postgresql-8.4-8.4.7.orig/debian/postgresql-8.4.prerm +++ postgresql-8.4-8.4.7/debian/postgresql-8.4.prerm @@ -0,0 +1,14 @@ +#!/bin/sh -e + +VERSION=8.4 + +#DEBHELPER# + +. /usr/share/postgresql-common/maintscripts-functions + +stop_version $VERSION + +if [ "$1" = remove ]; then + remove_version $VERSION +fi + --- postgresql-8.4-8.4.7.orig/debian/pycompat +++ postgresql-8.4-8.4.7/debian/pycompat @@ -0,0 +1 @@ +2 --- postgresql-8.4-8.4.7.orig/debian/postgresql-plperl-8.4.install +++ postgresql-8.4-8.4.7/debian/postgresql-plperl-8.4.install @@ -0,0 +1,2 @@ +usr/lib/postgresql/8.4/lib/plperl.so +/usr/share/locale/*/*/plperl-*.mo --- postgresql-8.4-8.4.7.orig/debian/libecpg-compat3.install +++ postgresql-8.4-8.4.7/debian/libecpg-compat3.install @@ -0,0 +1 @@ +usr/lib/libecpg_compat.so.3* --- postgresql-8.4-8.4.7.orig/debian/postgresql-plpython-8.4.install +++ postgresql-8.4-8.4.7/debian/postgresql-plpython-8.4.install @@ -0,0 +1,2 @@ +usr/lib/postgresql/8.4/lib/plpython.so +/usr/share/locale/*/*/plpython-*.mo --- postgresql-8.4-8.4.7.orig/debian/watch +++ postgresql-8.4-8.4.7/debian/watch @@ -0,0 +1,2 @@ +version=3 +http://www.postgresql.org/ftp/source/ /ftp/source/v(8\.4.*)/ --- postgresql-8.4-8.4.7.orig/debian/compat +++ postgresql-8.4-8.4.7/debian/compat @@ -0,0 +1 @@ +5 --- postgresql-8.4-8.4.7.orig/debian/postgresql-8.4.preinst +++ postgresql-8.4-8.4.7/debian/postgresql-8.4.preinst @@ -0,0 +1,30 @@ +#!/bin/sh +set -e + +rm_conffile() { + PKGNAME="postgresql-8.4" + CONFFILE="$1" + + if [ -e "$CONFFILE" ]; then + md5sum="`md5sum \"$CONFFILE\" | sed -e \"s/ .*//\"`" + old_md5sum="`dpkg-query -W -f='${Conffiles}' $PKGNAME | sed -n -e \"\\\\' $CONFFILE'{s/ obsolete$//;s/.* //p}\"`" + if [ "$md5sum" != "$old_md5sum" ]; then + echo "Obsolete conffile $CONFFILE has been modified by you." + echo "Saving as $CONFFILE.dpkg-bak ..." + mv -f "$CONFFILE" "$CONFFILE".dpkg-bak + else + echo "Removing obsolete conffile $CONFFILE ..." + rm -f "$CONFFILE" + fi + fi +} + +# earlier releases used per-version init scripts, now replaced with common one +if [ "$1" = "upgrade" ] || [ "$1" = "install" ] && \ + dpkg --compare-versions "$2" le-nl "8.4.4-2"; then + rm_conffile /etc/init.d/postgresql-8.4 +fi + +#DEBHELPER# + +exit 0 --- postgresql-8.4-8.4.7.orig/debian/postgresql-8.4.links +++ postgresql-8.4-8.4.7/debian/postgresql-8.4.links @@ -0,0 +1 @@ +/usr/share/doc/postgresql-common/README.Debian.gz /usr/share/doc/postgresql-8.4/README.Debian.gz --- postgresql-8.4-8.4.7.orig/debian/postgresql-client-8.4.prerm +++ postgresql-8.4-8.4.7/debian/postgresql-client-8.4.prerm @@ -0,0 +1,10 @@ +#!/bin/sh -e + +#DEBHELPER# + +VERSION=8.4 + +if [ "$1" = remove ]; then + . /usr/share/postgresql-common/maintscripts-functions + remove_client_version $VERSION +fi --- postgresql-8.4-8.4.7.orig/debian/postgresql-pltcl-8.4.install +++ postgresql-8.4-8.4.7/debian/postgresql-pltcl-8.4.install @@ -0,0 +1,4 @@ +usr/lib/postgresql/8.4/lib/pltcl.so +usr/lib/postgresql/8.4/bin/pltcl_* +usr/share/postgresql/8.4/unknown.pltcl +/usr/share/locale/*/*/pltcl-*.mo --- postgresql-8.4-8.4.7.orig/debian/postgresql-contrib-8.4.prerm +++ postgresql-8.4-8.4.7/debian/postgresql-contrib-8.4.prerm @@ -0,0 +1,10 @@ +#!/bin/sh -e + +#DEBHELPER# + +VERSION=8.4 + +if [ "$1" = remove ]; then + . /usr/share/postgresql-common/maintscripts-functions + remove_contrib_version $VERSION +fi --- postgresql-8.4-8.4.7.orig/debian/postgresql-contrib-8.4.install +++ postgresql-8.4-8.4.7/debian/postgresql-contrib-8.4.install @@ -0,0 +1,42 @@ +usr/share/doc/postgresql/contrib/* usr/share/doc/postgresql-contrib-8.4 +usr/share/postgresql/8.4/contrib/* +usr/lib/postgresql/8.4/bin/oid2name +usr/lib/postgresql/8.4/bin/pgbench +usr/lib/postgresql/8.4/bin/vacuumlo +usr/lib/postgresql/8.4/bin/pg_standby +usr/lib/postgresql/8.4/lib/_int.so +usr/lib/postgresql/8.4/lib/autoinc.so +usr/lib/postgresql/8.4/lib/btree_gist.so +usr/lib/postgresql/8.4/lib/chkpass.so +usr/lib/postgresql/8.4/lib/cube.so +usr/lib/postgresql/8.4/lib/dblink.so +usr/lib/postgresql/8.4/lib/earthdistance.so +usr/lib/postgresql/8.4/lib/fuzzystrmatch.so +usr/lib/postgresql/8.4/lib/insert_username.so +usr/lib/postgresql/8.4/lib/lo.so +usr/lib/postgresql/8.4/lib/ltree.so +usr/lib/postgresql/8.4/lib/moddatetime.so +usr/lib/postgresql/8.4/lib/pageinspect.so +usr/lib/postgresql/8.4/lib/pg_trgm.so +usr/lib/postgresql/8.4/lib/pgcrypto.so +usr/lib/postgresql/8.4/lib/pgstattuple.so +usr/lib/postgresql/8.4/lib/refint.so +usr/lib/postgresql/8.4/lib/seg.so +usr/lib/postgresql/8.4/lib/tablefunc.so +usr/lib/postgresql/8.4/lib/timetravel.so +usr/lib/postgresql/8.4/lib/pgxml.so +usr/lib/postgresql/8.4/lib/pg_buffercache.so +usr/lib/postgresql/8.4/lib/adminpack.so +usr/lib/postgresql/8.4/lib/sslinfo.so +usr/lib/postgresql/8.4/lib/isn.so +usr/lib/postgresql/8.4/lib/hstore.so +usr/lib/postgresql/8.4/lib/pgrowlocks.so +usr/lib/postgresql/8.4/lib/pg_freespacemap.so +usr/lib/postgresql/8.4/lib/uuid-ossp.so +usr/lib/postgresql/8.4/lib/test_parser.so +usr/lib/postgresql/8.4/lib/dict_int.so +usr/lib/postgresql/8.4/lib/dict_xsyn.so +usr/lib/postgresql/8.4/lib/auto_explain.so +usr/lib/postgresql/8.4/lib/pg_stat_statements.so +usr/lib/postgresql/8.4/lib/citext.so +usr/lib/postgresql/8.4/lib/btree_gin.so --- postgresql-8.4-8.4.7.orig/debian/disable-root-check.patch +++ postgresql-8.4-8.4.7/debian/disable-root-check.patch @@ -0,0 +1,36 @@ +diff -Nur postgresql-8.4/build-tree/postgresql-8.4beta1/src/backend/main/main.c postgresql-8.4.new/build-tree/postgresql-8.4beta1/src/backend/main/main.c +--- postgresql-8.4beta1/src/backend/main/main.c 2006-09-26 00:50:41.000000000 +0200 ++++ postgresql-8.4beta1/src/backend/main/main.c 2006-09-26 00:51:43.000000000 +0200 +@@ -326,7 +326,7 @@ + check_root(const char *progname) + { + #ifndef WIN32 +- if (geteuid() == 0) ++ if (0 && geteuid() == 0) + { + write_stderr("\"root\" execution of the PostgreSQL server is not permitted.\n" + "The server must be started under an unprivileged user ID to prevent\n" +diff -Nur postgresql-8.4/build-tree/postgresql-8.4beta1/src/bin/initdb/initdb.c postgresql-8.4.new/build-tree/postgresql-8.4beta1/src/bin/initdb/initdb.c +--- postgresql-8.4beta1/src/bin/initdb/initdb.c 2006-09-26 00:50:41.000000000 +0200 ++++ postgresql-8.4beta1/src/bin/initdb/initdb.c 2006-09-26 00:52:09.000000000 +0200 +@@ -636,7 +636,7 @@ + + pw = getpwuid(geteuid()); + +- if (geteuid() == 0) /* 0 is root's uid */ ++ if (0 && geteuid() == 0) /* 0 is root's uid */ + { + fprintf(stderr, + _("%s: cannot be run as root\n" +diff -Nur postgresql-8.4/build-tree/postgresql-8.4beta1/src/bin/pg_ctl/pg_ctl.c postgresql-8.4.new/build-tree/postgresql-8.4beta1/src/bin/pg_ctl/pg_ctl.c +--- postgresql-8.4beta1/src/bin/pg_ctl/pg_ctl.c 2006-09-26 00:50:41.000000000 +0200 ++++ postgresql-8.4beta1/src/bin/pg_ctl/pg_ctl.c 2006-09-26 00:52:23.000000000 +0200 +@@ -1517,7 +1517,7 @@ + * Disallow running as root, to forestall any possible security holes. + */ + #ifndef WIN32 +- if (geteuid() == 0) ++ if (0 && geteuid() == 0) + { + write_stderr(_("%s: cannot be run as root\n" + "Please log in (using, e.g., \"su\") as the " --- postgresql-8.4-8.4.7.orig/debian/docbook2man-sgmlspl/docbook2man-spec_makelinks +++ postgresql-8.4-8.4.7/debian/docbook2man-sgmlspl/docbook2man-spec_makelinks @@ -0,0 +1,15 @@ +#!/usr/bin/perl + +while() +{ + chomp; + ($main, $link) = split(/\t/); + + $n = $main; + $n =~ s/^.*\.(\d).*$/$1/; + + open(LINK, ">$link"); + print LINK ".so man$n/$main\n"; + close(LINK); +} + --- postgresql-8.4-8.4.7.orig/debian/docbook2man-sgmlspl/docbook2man-spec.pl +++ postgresql-8.4-8.4.7/debian/docbook2man-sgmlspl/docbook2man-spec.pl @@ -0,0 +1,1546 @@ +=head1 NAME + +docbook2man-spec.pl - convert DocBook RefEntries to Unix manpages + +=head1 SYNOPSIS + +The sgmlspl script from the SGMLSpm Perl module must be used to run +this script. Use it like this: + +nsgmls some-docbook-document.sgml | sgmlspl docbook2man-spec.pl + +See man page or included DocBook documentation for details. + +=head1 DESCRIPTION + +This is a sgmlspl spec file that produces Unix-style +man pages from DocBook RefEntry markup. + +=head1 COPYRIGHT + +Copyright (C) 1998-2001 Steve Cheng + +Copyright (C) 1999 Thomas Lockhart + +This program is free software; you can redistribute it and/or modify it +under the terms of the GNU General Public License as published by the Free +Software Foundation; either version 2, or (at your option) any later +version. + +You should have received a copy of the GNU General Public License along with +this program; see the file COPYING. If not, please write to the Free +Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. + +=cut + +# $Id: docbook2man-spec.pl,v 1.1.1.1 2001/09/06 18:37:06 stevecheng Exp $ + +use SGMLS; # Use the SGMLS package. +use SGMLS::Output; # Use stack-based output. +use SGMLS::Refs; + + +######################################################################## +# SGMLSPL script produced automatically by the script sgmlspl.pl +# +# Document Type: any, but processes only RefEntries +# Edited by: me :) +######################################################################## + + +$write_manpages = 0; +$blank_xrefs = 0; + +$default_sect = "1"; +$default_date = `date "+%d %B %Y"`; +$cite_numeral_only = 1; + +while (@ARGV) { + my $arg = shift @ARGV; + if ($arg eq "--section") { + $default_sect = shift @ARGV || die "$arg requires an argument\n"; + } elsif ($arg eq "--date") { + $default_date = shift @ARGV || die "$arg requires an argument\n"; + } elsif ($arg eq "--lowercase") { + $lowercase_names = 1; + } elsif ($arg eq "--preserve-case") { + $lowercase_names = 0; + } elsif ($arg eq "--cite-numeral-only") { + $cite_numeral_only = 1; + } elsif ($arg eq "--nocite-numeral-only") { + $cite_numeral_only = 0; + } elsif ($arg eq "--help") { + print "Usage: $0", + " [ --section