diff options
author | recht <recht@pkgsrc.org> | 2005-04-11 20:34:43 +0000 |
---|---|---|
committer | recht <recht@pkgsrc.org> | 2005-04-11 20:34:43 +0000 |
commit | 05880ebe05b9a287e49350a2ad5589d5dd73e8e0 (patch) | |
tree | d1dff07d9dcb83c0b4ffc19155d3cb117c501992 /databases/postgresql80 | |
parent | bcc8db8a6eb9931606f125e8e352f158f7a729a6 (diff) | |
download | pkgsrc-05880ebe05b9a287e49350a2ad5589d5dd73e8e0.tar.gz |
update to PostgreSQL 8.0.2
While at it do some structual changes to packages and merge
the lib and docs package has been merged into the client package.
Also enable Rendezvous support on Darwin.
Changes
* Increment the major version number of all interface libraries
(Bruce)
This should have been done in 8.0.0. It is required so 7.4.X
versions of PostgreSQL client applications, like psql, can be used
on the same machine as 8.0.X applications. This might require
re-linking user applications that use these libraries.
* Add Windows-only wal_sync_method setting of "fsync_writethrough"
(Magnus, Bruce)
This setting causes PostgreSQL to write through any disk-drive
write cache when writing to WAL. This behavior was formerly called
"fsync", but was renamed because it acts quite differently from
"fsync" on other platforms.
* Enable the wal_sync_method setting of "open_datasync" on Windows,
and make it the default for that platform (Magnus, Bruce)
Because the default is no longer "fsync_writethrough", data loss is
possible during a power failure if the disk drive has write caching
enabled. To turn off the write cache on Windows, from the Device
Manager, choose the drive properties, then Policies.
* New cache management algorithm 2Q replaces ARC (Tom)
This was done to avoid a pending US patent on ARC. The 2Q code
might be a few percentage points slower than ARC for some work
loads. A better cache management algorithm will appear in 8.1.
* Planner adjustments to improve behavior on freshly-created tables
(Tom)
* Allow plpgsql to assign to an element of an array that is initially
NULL (Tom)
Formerly the array would remain NULL, but now it becomes a
single-element array. The main SQL engine was changed to handle
"UPDATE" of a null array value this way in 8.0, but the similar
case in plpgsql was overlooked.
* Convert \r\n and \r to \n in plpython function bodies (Michael
Fuhr)
This prevents syntax errors when plpython code is written on a
Windows or Mac client.
* Allow SPI cursors to handle utility commands that return rows, such
as "EXPLAIN" (Tom)
* Fix "CLUSTER" failure after "ALTER TABLE SET WITHOUT OIDS" (Tom)
* Reduce memory usage of "ALTER TABLE ADD COLUMN" (Neil)
* Fix "ALTER LANGUAGE RENAME" (Tom)
* Document the Windows-only register and unregister options of pg_ctl
(Magnus)
* Ensure operations done during backend shutdown are counted by
statistics collector
This is expected to resolve reports of pg_autovacuum not vacuuming
the system catalogs often enough -- it was not being told about
catalog deletions caused by temporary table removal during backend
exit.
* Change the Windows default for configuration parameter
log_destination to "eventlog" (Magnus)
By default, a server running on Windows will now send log output to
the Windows event logger rather than standard error.
* Make Kerberos authentication work on Windows (Magnus)
* Allow "ALTER DATABASE RENAME" by superusers who aren't flagged as
having CREATEDB privilege (Tom)
* Modify WAL log entries for "CREATE" and "DROP DATABASE" to not
specify absolute paths (Tom)
This allows point-in-time recovery on a different machine with
possibly different database location. Note that "CREATE TABLESPACE"
still poses a hazard in such situations.
* Fix crash from a backend exiting with an open transaction that
created a table and opened a cursor on it (Tom)
* Fix array_map() so it can call PL functions (Tom)
* Several "contrib/tsearch2" and "contrib/btree_gist" fixes (Teodor)
* Fix crash of some "contrib/pgcrypto" functions on some platforms
(Marko Kreen)
* Fix "contrib/intagg" for 64-bit platforms (Tom)
* Fix ecpg bugs in parsing of "CREATE" statement (Michael)
* Work around gcc bug on powerpc and amd64 causing problems in ecpg
(Christof Petig)
* Do not use locale-aware versions of upper(), lower(), and initcap()
when the locale is C (Bruce)
This allows these functions to work on platforms that generate
errors for non-7-bit data when the locale is C.
* Fix quote_ident() to quote names that match keywords (Tom)
* Fix to_date() to behave reasonably when CC and YY fields are both
used (Karel)
* Prevent to_char(interval) from failing when given a zero-month
interval (Tom)
* Fix wrong week returned by date_trunc('week') (Bruce)
date_trunc('week') returned the wrong year for the first few days
of January in some years.
* Use the correct default mask length for class D addresses in INET
data types (Tom)
Diffstat (limited to 'databases/postgresql80')
-rw-r--r-- | databases/postgresql80/Makefile | 1 | ||||
-rw-r--r-- | databases/postgresql80/Makefile.common | 29 | ||||
-rw-r--r-- | databases/postgresql80/distinfo | 14 | ||||
-rw-r--r-- | databases/postgresql80/patches/patch-aa | 12 | ||||
-rw-r--r-- | databases/postgresql80/patches/patch-ab | 70 |
5 files changed, 33 insertions, 93 deletions
diff --git a/databases/postgresql80/Makefile b/databases/postgresql80/Makefile index 7542850e247..dc5f9d6b827 100644 --- a/databases/postgresql80/Makefile +++ b/databases/postgresql80/Makefile @@ -4,7 +4,6 @@ COMMENT= Robust, next generation, object-relational DBMS DEPENDS+= postgresql80-client>=${BASE_VERS}:../../databases/postgresql80-client DEPENDS+= postgresql80-server>=${BASE_VERS}:../../databases/postgresql80-server -DEPENDS+= postgresql80-docs>=${BASE_VERS}:../../databases/postgresql80-docs .include "Makefile.common" diff --git a/databases/postgresql80/Makefile.common b/databases/postgresql80/Makefile.common index 93991c625a7..a91eb5db238 100644 --- a/databases/postgresql80/Makefile.common +++ b/databases/postgresql80/Makefile.common @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.common,v 1.1.1.1 2005/02/06 12:32:05 jdolecek Exp $ +# $NetBSD: Makefile.common,v 1.2 2005/04/11 20:34:43 recht Exp $ # # This Makefile fragment is included by all PostgreSQL packages built from # the main sources of the PostgreSQL distribution except jdbc-postgresql. @@ -36,7 +36,7 @@ PATCHDIR?= ${.CURDIR}/../postgresql80/patches # BASE_VERS pkgsrc-mangled version number (convert pl -> .) # # Note: Do not forget jdbc-postgresql when updating version -DIST_VERS?= 8.0.1 +DIST_VERS?= 8.0.2 BASE_VERS?= ${DIST_VERS} BUILDLINK_DEPENDS.postgresql80-lib?= postgresql80-lib>=${BASE_VERS} @@ -48,12 +48,12 @@ BUILD_USES_MSGFMT= yes USE_GNU_TOOLS+= lex make yacc PKG_SYSCONFSUBDIR= postgresql -# in 7.4.2, this is done by autoconf stuff which has leading whitespace -#USE_PKGLOCALEDIR= yes -#SUBST_CLASSES+= pkglocaledir2 -#SUBST_FILES.pkglocaledir2= configure config/programs.m4 -#SUBST_STAGE.pkglocaledir2= pre-configure -#SUBST_SED.pkglocaledir2= -e 's|\( localedir[ :]*=\).*|\1${_PKGLOCALEDIR}|' +# in 7.4.x/8.0.x, this is done by autoconf stuff which has leading whitespace +USE_PKGLOCALEDIR= yes +SUBST_CLASSES+= pkglocaledir2 +SUBST_FILES.pkglocaledir2= configure config/programs.m4 +SUBST_STAGE.pkglocaledir2= pre-configure +SUBST_SED.pkglocaledir2= -e 's|\( localedir[ :]*=\).*|\1${_PKGLOCALEDIR}|' .include "../../mk/bsd.prefs.mk" @@ -61,7 +61,7 @@ PKG_SYSCONFSUBDIR= postgresql # see http://gppl.terminal.ru/README.html for details. .if defined(PGSQL_USE_HIER) && !empty(PGSQL_USE_HIER:M[yY][eE][sS]) PATCH_SITES= http://gppl.moonbone.ru/ -PATCHFILES= hier-Pg7.4-0.5.3.tar.gz +PATCHFILES= hier-Pg8.0.1-0.5.4.diff.gz PATCH_DIST_STRIP= -p1 .endif BUILD_DEFS+= PGSQL_USE_HIER @@ -74,12 +74,16 @@ PGSQL_TEMPLATE.${OPSYS}= ${LOWER_OPSYS} PG_DIR= ${PREFIX} GNU_CONFIGURE_PREFIX= ${PG_DIR} INSTALLATION_DIRS+= ${PG_DIR} +PG_DATA_DIR= ${PREFIX}/share/postgresql80 +PG_DOC_DIR= ${PREFIX}/share/doc/postgresql80 #CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR} -CONFIGURE_ARGS+= --with-docdir=${PREFIX}/share/doc/postgresql80 +CONFIGURE_ARGS+= --datadir=${PG_DATA_DIR} +CONFIGURE_ARGS+= --with-docdir=${PG_DOC_DIR} CONFIGURE_ARGS+= --with-template="${PGSQL_TEMPLATE.${OPSYS}}" CONFIGURE_ARGS+= --without-readline CONFIGURE_ARGS+= --with-zlib +CONFIGURE_ARGS+= --with-openssl CONFIGURE_ARGS+= --enable-nls CONFIGURE_ARGS+= --without-java @@ -88,6 +92,11 @@ CONFIGURE_ARGS+= --without-python CONFIGURE_ARGS+= --without-tcl CONFIGURE_ARGS+= --without-tk +# enable Rendezvous (recommended on Mac OS X) +.if ${OPSYS} == "Darwin" +CONFIGURE_ARGS+= --with-rendezvous +.endif + # Postgresql explicitly forbids any use of -ffast-math CFLAGS:= ${CFLAGS:S/-ffast-math//} diff --git a/databases/postgresql80/distinfo b/databases/postgresql80/distinfo index a6afecd213b..b33f4c5bb86 100644 --- a/databases/postgresql80/distinfo +++ b/databases/postgresql80/distinfo @@ -1,7 +1,9 @@ -$NetBSD: distinfo,v 1.3 2005/03/17 20:56:46 jschauma Exp $ +$NetBSD: distinfo,v 1.4 2005/04/11 20:34:43 recht Exp $ -SHA1 (postgresql-8.0.1.tar.bz2) = 42a16fe13a6271b1612fb0a9f41f7da0a2e307b6 -RMD160 (postgresql-8.0.1.tar.bz2) = 8aca3b38d2e37efe5ed1ff16e942daad2e486e1f -Size (postgresql-8.0.1.tar.bz2) = 11049626 bytes -SHA1 (patch-aa) = 20492216de0e5238a02b4cdd18c297731cf6462a -SHA1 (patch-ab) = 2b3a45b3d1c529a0d4202e5a095f4d9391507e82 +SHA1 (postgresql-8.0.2.tar.bz2) = c42024236dceea78f07ba6a2ae40604b56a14b0f +RMD160 (postgresql-8.0.2.tar.bz2) = 887577dabbb5e88e6a8e561a66c1fc25f7ce61ca +Size (postgresql-8.0.2.tar.bz2) = 11050977 bytes +SHA1 (hier-Pg8.0.1-0.5.4.diff.gz) = c1a1141363c1d3c14025d97993b5367166c85da4 +RMD160 (hier-Pg8.0.1-0.5.4.diff.gz) = f212f840d06a914fd668398848baef5a269875eb +Size (hier-Pg8.0.1-0.5.4.diff.gz) = 30662 bytes +SHA1 (patch-aa) = cb718b62a0559b41421176801c015ae9d21230b6 diff --git a/databases/postgresql80/patches/patch-aa b/databases/postgresql80/patches/patch-aa index a6592ae3d6f..4832382ae0f 100644 --- a/databases/postgresql80/patches/patch-aa +++ b/databases/postgresql80/patches/patch-aa @@ -1,8 +1,8 @@ -$NetBSD: patch-aa,v 1.1.1.1 2005/02/06 12:32:05 jdolecek Exp $ +$NetBSD: patch-aa,v 1.2 2005/04/11 20:34:43 recht Exp $ ---- src/Makefile.shlib.orig Tue Nov 9 17:02:42 2004 -+++ src/Makefile.shlib -@@ -132,7 +132,7 @@ endif +--- src/Makefile.shlib.orig Sat Nov 20 22:13:04 2004 ++++ src/Makefile.shlib Sun Apr 10 15:58:34 2005 +@@ -132,7 +132,7 @@ ifeq ($(PORTNAME), freebsd) ifdef ELF_SYSTEM @@ -11,7 +11,7 @@ $NetBSD: patch-aa,v 1.1.1.1 2005/02/06 12:32:05 jdolecek Exp $ LINK.shared = $(COMPILER) -shared -Wl,-x,-soname,$(soname) else shlib = lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION) -@@ -149,7 +149,7 @@ ifeq ($(PORTNAME), netbsd) +@@ -149,7 +149,7 @@ endif ifeq ($(PORTNAME), hpux) @@ -20,7 +20,7 @@ $NetBSD: patch-aa,v 1.1.1.1 2005/02/06 12:32:05 jdolecek Exp $ ifeq ($(GCC), yes) SHLIB_LINK += `$(CC) $(LDFLAGS) -print-libgcc-file-name` endif -@@ -161,7 +161,7 @@ ifeq ($(PORTNAME), hpux) +@@ -167,7 +167,7 @@ endif ifeq ($(PORTNAME), irix) diff --git a/databases/postgresql80/patches/patch-ab b/databases/postgresql80/patches/patch-ab deleted file mode 100644 index 628b9abd136..00000000000 --- a/databases/postgresql80/patches/patch-ab +++ /dev/null @@ -1,70 +0,0 @@ -$NetBSD: patch-ab,v 1.1 2005/03/17 20:56:46 jschauma Exp $ - ---- src/pl/plpgsql/src/gram.y.orig 2005-03-17 15:43:26.000000000 -0500 -+++ src/pl/plpgsql/src/gram.y 2005-03-17 15:43:31.000000000 -0500 -@@ -1794,6 +1794,15 @@ - } - } - -+ /* Check for array overflow */ -+ if (nparams >= 1024) -+ { -+ plpgsql_error_lineno = lno; -+ ereport(ERROR, -+ (errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED), -+ errmsg("too many variables specified in SQL statement"))); -+ } -+ - if (endtoken) - *endtoken = tok; - -@@ -1940,6 +1949,16 @@ - - while ((tok = yylex()) == ',') - { -+ /* Check for array overflow */ -+ if (nfields >= 1024) -+ { -+ plpgsql_error_lineno = plpgsql_scanner_lineno(); -+ ereport(ERROR, -+ (errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED), -+ errmsg("too many INTO variables specified"))); -+ } -+ -+ - tok = yylex(); - switch(tok) - { -@@ -2014,6 +2033,16 @@ - plpgsql_dstring_append(&ds, yytext); - break; - } -+ -+ /* Check for array overflow */ -+ if (nparams >= 1024) -+ { -+ plpgsql_error_lineno = plpgsql_scanner_lineno(); -+ ereport(ERROR, -+ (errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED), -+ errmsg("too many variables specified in SQL statement"))); -+ } -+ - } - - expr = malloc(sizeof(PLpgSQL_expr) + sizeof(int) * nparams - sizeof(int)); -@@ -2085,6 +2114,15 @@ - - while ((tok = yylex()) == ',') - { -+ /* Check for array overflow */ -+ if (nfields >= 1024) -+ { -+ plpgsql_error_lineno = plpgsql_scanner_lineno(); -+ ereport(ERROR, -+ (errcode(ERRCODE_PROGRAM_LIMIT_EXCEEDED), -+ errmsg("too many INTO variables specified"))); -+ } -+ - tok = yylex(); - switch(tok) - { |