[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: PostgreSQL maintenance release for Etch



Martin Pitt [2008-01-04 14:32 +0100]:
> I attach the debdiff 

LALALA, sorry. Here it comes.

Martin
-- 
Martin Pitt        http://www.piware.de
Ubuntu Developer   http://www.ubuntu.com
Debian Developer   http://www.debian.org
diff -u postgresql-8.1-8.1.9/debian/control postgresql-8.1-8.1.10/debian/control
--- postgresql-8.1-8.1.9/debian/control
+++ postgresql-8.1-8.1.10/debian/control
@@ -84,7 +84,7 @@
 Package: postgresql-8.1
 Architecture: any
 Section: misc
-Depends: ${shlibs:Depends}, postgresql-client-8.1, postgresql-common (>= 39)
+Depends: ${shlibs:Depends}, postgresql-client-8.1, tzdata, postgresql-common (>= 39)
 Suggests: oidentd | ident-server
 Conflicts: postgresql (<< 7.5)
 Description: object-relational SQL database, version 8.1 server
diff -u postgresql-8.1-8.1.9/debian/rules postgresql-8.1-8.1.10/debian/rules
--- postgresql-8.1-8.1.9/debian/rules
+++ postgresql-8.1-8.1.10/debian/rules
@@ -1,6 +1,6 @@
 #!/usr/bin/make	-f 
 TCL_VER := 8.4
-DEB_TAR_SRCDIR := postgresql-8.1.9
+DEB_TAR_SRCDIR := postgresql-8.1.10
 
 include /usr/share/cdbs/1/rules/tarball.mk
 include /usr/share/cdbs/1/rules/simple-patchsys.mk
diff -u postgresql-8.1-8.1.9/debian/postgresql-8.1.install postgresql-8.1-8.1.10/debian/postgresql-8.1.install
--- postgresql-8.1-8.1.9/debian/postgresql-8.1.install
+++ postgresql-8.1-8.1.10/debian/postgresql-8.1.install
@@ -19,7 +19,7 @@
 usr/share/postgresql/8.1/man/man1/pg_resetxlog.1
 usr/share/postgresql/8.1/man/man1/postgres.1
 usr/share/postgresql/8.1/man/man1/postmaster.1
-usr/share/postgresql/8.1/timezone/*
+usr/share/postgresql/8.1/timezone
 usr/share/postgresql/8.1/*.sql
 usr/share/postgresql/8.1/*.conf.sample
 usr/share/postgresql/8.1/postgres.bki
diff -u postgresql-8.1-8.1.9/debian/changelog postgresql-8.1-8.1.10/debian/changelog
--- postgresql-8.1-8.1.9/debian/changelog
+++ postgresql-8.1-8.1.10/debian/changelog
@@ -1,3 +1,39 @@
+postgresql-8.1 (8.1.10-0etch1) stable; urgency=low
+
+  * New upstream bugfix release:
+    - Require non-superusers who use "/contrib/dblink" to use only
+      password authentication, as a security measure.
+      [CVE-2007-3278, CVE-2007-3280]
+    - Make "CREATE DOMAIN ... DEFAULT NULL" work properly.
+    - Allow the interval data type to accept input consisting only of
+      milliseconds or microseconds.
+    - Speed up rtree index insertion.
+    - Fix excessive logging of SSL error messages.
+    - Fix logging so that log messages are never interleaved when using
+      the syslogger process.
+    - Fix crash when log_min_error_statement logging runs out of memory.
+    - Fix incorrect handling of some foreign-key corner cases.
+    - Prevent "REINDEX" and "CLUSTER" from failing due to attempting to
+      process temporary tables of other sessions.
+    - Update the time zone database rules, particularly New Zealand's
+      upcoming changes. (Closes: #443360)
+  * Drop debian/patches/00upstream-01-polymorphic-functions.patch, upstream
+    now.
+  * Use the timezone database from the system tzdata instead of shipping our
+    own. (Closes: #458927, #454637)
+    - debian/patches/04-timezone-symlinks.patch: Drop previous
+      hardlink-to-symlink patch to zic, since that is irrelevant now. Replace
+      the patch with a Makefile change that just symlinks /usr/share/zoneinfo
+      to where postgresql previously installed its own tzdata copy.
+    - debian/control: Add tzdata dependency.
+    - debian/postgresql-8.1.install: Install the 'timezone' symlink, not the
+      files in the dereferenced directory.
+    - debian/postgresql-8.1.postinst: Replace the timezone directory with the
+      symlink on upgrades, since dpkg does not do that automatically. Without
+      this, we'd end up with an empty timezone directory.
+
+ -- Martin Pitt <mpitt@debian.org>  Fri, 04 Jan 2008 13:30:54 +0100
+
 postgresql-8.1 (8.1.9-0etch2) stable; urgency=high
 
   * Add debian/patches/00upstream-01-polymorphic-functions.patch:
diff -u postgresql-8.1-8.1.9/debian/postgresql-8.1.postinst postgresql-8.1-8.1.10/debian/postgresql-8.1.postinst
--- postgresql-8.1-8.1.9/debian/postgresql-8.1.postinst
+++ postgresql-8.1-8.1.10/debian/postgresql-8.1.postinst
@@ -4,6 +4,12 @@
 
 
 if [ "$1" = configure ]; then
+    # replace timezone directory with symlink on upgrades
+    if ! [ -L /usr/share/postgresql/8.1/timezone ]; then
+        rmdir /usr/share/postgresql/8.1/timezone
+        ln -s ../../zoneinfo /usr/share/postgresql/8.1/timezone
+    fi
+
     . /usr/share/postgresql-common/maintscripts-functions
 
     configure_version $VERSION "$2"
diff -u postgresql-8.1-8.1.9/debian/patches/04-timezone-symlinks.patch postgresql-8.1-8.1.10/debian/patches/04-timezone-symlinks.patch
--- postgresql-8.1-8.1.9/debian/patches/04-timezone-symlinks.patch
+++ postgresql-8.1-8.1.10/debian/patches/04-timezone-symlinks.patch
@@ -1,31 +1,12 @@
-diff -ruN postgresql-8.1.1-old/src/timezone/zic.c postgresql-8.1.1/src/timezone/zic.c
---- postgresql-8.1.1-old/src/timezone/zic.c	2004-09-27 21:16:03.000000000 +0200
-+++ postgresql-8.1.1/src/timezone/zic.c	2005-02-08 00:10:42.560848352 +0100
-@@ -611,14 +611,14 @@
- 	 */
- 	if (!itsdir(toname))
- 		(void) remove(toname);
--	if (link(fromname, toname) != 0)
-+        if (1)
- 	{
- 		int			result;
+diff -Nur -x '*.orig' -x '*~' postgresql-8.1-8.1.10/build-tree/postgresql-8.1.10/src/timezone/Makefile postgresql-8.1-8.1.10.new/build-tree/postgresql-8.1.10/src/timezone/Makefile
+--- postgresql-8.1.10/src/timezone/Makefile	2007-03-14 18:38:22.000000000 +0100
++++ postgresql-8.1.10/src/timezone/Makefile	2008-01-04 13:30:24.000000000 +0100
+@@ -38,7 +38,7 @@
+ 	$(CC) $(CFLAGS) $(ZICOBJS) $(LDFLAGS) $(LIBS) -o $@$(X)
  
- 		if (mkdirs(toname) != 0)
- 			(void) exit(EXIT_FAILURE);
+ install: all installdirs
+-	./zic -d $(DESTDIR)$(datadir)/timezone -p $(POSIXRULES) $(TZDATAFILES)
++	ln -s /usr/share/zoneinfo '$(DESTDIR)$(datadir)/timezone'
  
--		result = link(fromname, toname);
-+                result = 1;
- #ifdef HAVE_SYMLINK
- 		if (result != 0 &&
- 			access(fromname, F_OK) == 0 &&
-@@ -632,8 +632,10 @@
- 			symlinkcontents = ecatalloc(symlinkcontents, fromfile);
- 
- 			result = symlink(symlinkcontents, toname);
-+                        /*
- 			if (result == 0)
- 				warning(_("hard link failed, symbolic link used"));
-+                        */
- 			ifree(symlinkcontents);
- 		}
- #endif
+ installdirs:
+ 	$(mkinstalldirs) $(DESTDIR)$(datadir)
reverted:
--- postgresql-8.1-8.1.9/debian/patches/00upstream-01-polymorphic-functions.patch
+++ postgresql-8.1-8.1.9.orig/debian/patches/00upstream-01-polymorphic-functions.patch
@@ -1,83 +0,0 @@
-diff -Nur postgresql-8.1-8.1.9/build-tree/postgresql-8.1.9/src/backend/optimizer/util/clauses.c postgresql-8.1-8.1.9.new/build-tree/postgresql-8.1.9/src/backend/optimizer/util/clauses.c
---- postgresql-8.1.9/src/backend/optimizer/util/clauses.c	2007-03-06 23:45:29.000000000 +0100
-+++ postgresql-8.1.9/src/backend/optimizer/util/clauses.c	2007-06-23 18:54:12.000000000 +0200
-@@ -2510,11 +2510,11 @@
- 	 * compatible with the original expression result type.  To avoid
- 	 * confusing matters, insert a RelabelType in such cases.
- 	 */
--	if (exprType(newexpr) != funcform->prorettype)
-+	if (exprType(newexpr) != result_type)
- 	{
--		Assert(IsBinaryCoercible(exprType(newexpr), funcform->prorettype));
-+		Assert(IsBinaryCoercible(exprType(newexpr), result_type));
- 		newexpr = (Node *) makeRelabelType((Expr *) newexpr,
--										   funcform->prorettype,
-+										   result_type,
- 										   -1,
- 										   COERCE_IMPLICIT_CAST);
- 	}
-diff -Nur postgresql-8.1-8.1.9/build-tree/postgresql-8.1.9/src/test/regress/expected/polymorphism.out postgresql-8.1-8.1.9.new/build-tree/postgresql-8.1.9/src/test/regress/expected/polymorphism.out
---- postgresql-8.1.9/src/test/regress/expected/polymorphism.out	2005-03-24 20:14:49.000000000 +0100
-+++ postgresql-8.1.9/src/test/regress/expected/polymorphism.out	2007-06-23 18:54:28.000000000 +0200
-@@ -530,3 +530,38 @@
-  a  | {1,2,3}
- (3 rows)
- 
-+-- test inlining of polymorphic SQL functions
-+create function bleat(int) returns int as $$
-+begin
-+  raise notice 'bleat %', $1;
-+  return $1;
-+end$$ language plpgsql;
-+create function sql_if(bool, anyelement, anyelement) returns anyelement as $$
-+select case when $1 then $2 else $3 end $$ language sql;
-+-- Note this would fail with integer overflow, never mind wrong bleat() output,
-+-- if the CASE expression were not successfully inlined
-+select f1, sql_if(f1 > 0, bleat(f1), bleat(f1 + 1)) from int4_tbl;
-+NOTICE:  bleat 1
-+NOTICE:  bleat 123456
-+NOTICE:  bleat -123455
-+NOTICE:  bleat 2147483647
-+NOTICE:  bleat -2147483646
-+     f1      |   sql_if    
-+-------------+-------------
-+           0 |           1
-+      123456 |      123456
-+     -123456 |     -123455
-+  2147483647 |  2147483647
-+ -2147483647 | -2147483646
-+(5 rows)
-+
-+select q2, sql_if(q2 > 0, q2, q2 + 1) from int8_tbl;
-+        q2         |      sql_if       
-+-------------------+-------------------
-+               456 |               456
-+  4567890123456789 |  4567890123456789
-+               123 |               123
-+  4567890123456789 |  4567890123456789
-+ -4567890123456789 | -4567890123456788
-+(5 rows)
-+
-diff -Nur postgresql-8.1-8.1.9/build-tree/postgresql-8.1.9/src/test/regress/sql/polymorphism.sql postgresql-8.1-8.1.9.new/build-tree/postgresql-8.1.9/src/test/regress/sql/polymorphism.sql
---- postgresql-8.1.9/src/test/regress/sql/polymorphism.sql	2003-07-01 21:10:53.000000000 +0200
-+++ postgresql-8.1.9/src/test/regress/sql/polymorphism.sql	2007-06-23 18:54:23.000000000 +0200
-@@ -365,3 +365,19 @@
- select f3, myaggn08b(f1) from t group by f3;
- select f3, myaggn09a(f1) from t group by f3;
- select f3, myaggn10a(f1) from t group by f3;
-+
-+-- test inlining of polymorphic SQL functions
-+create function bleat(int) returns int as $$
-+begin
-+  raise notice 'bleat %', $1;
-+  return $1;
-+end$$ language plpgsql;
-+
-+create function sql_if(bool, anyelement, anyelement) returns anyelement as $$
-+select case when $1 then $2 else $3 end $$ language sql;
-+
-+-- Note this would fail with integer overflow, never mind wrong bleat() output,
-+-- if the CASE expression were not successfully inlined
-+select f1, sql_if(f1 > 0, bleat(f1), bleat(f1 + 1)) from int4_tbl;
-+
-+select q2, sql_if(q2 > 0, q2, q2 + 1) from int8_tbl;

Attachment: signature.asc
Description: Digital signature


Reply to: