diff options
author | adam <adam@pkgsrc.org> | 2010-04-12 09:58:38 +0000 |
---|---|---|
committer | adam <adam@pkgsrc.org> | 2010-04-12 09:58:38 +0000 |
commit | e585da8fd0d76795d34dd02bce28c9d1bee7af4b (patch) | |
tree | b5a85937a85c601df1d0d62507b840eeeb54d568 /databases/postgresql84 | |
parent | be2ae37c5f7db457803437c43cfd737d2bf3986c (diff) | |
download | pkgsrc-e585da8fd0d76795d34dd02bce28c9d1bee7af4b.tar.gz |
Changes 8.4.3:
* Add new configuration parameter ssl_renegotiation_limit to control
how often we do session key renegotiation for an SSL connection
* 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
* Add support for doing FULL JOIN ON FALSE
* 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
* 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 fully
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
* Fix assorted crashes in "contrib/xml2" caused by sloppy memory
management
* Make building of "contrib/xml2" more robust on Windows
* Fix race condition in Windows signal handling
One known symptom of this bug is that rows in pg_listener could be
dropped under heavy load.
* Make the configure script report failure if the C compiler does not
provide a working 64-bit integer datatype
This case has been broken for some time, and no longer seems worth
supporting, so just reject it at configure time instead.
* Update time zone data files to tzdata release 2010e for DST law
changes in Bangladesh, Chile, Fiji, Mexico, Paraguay, Samoa.
Diffstat (limited to 'databases/postgresql84')
-rw-r--r-- | databases/postgresql84/Makefile.common | 77 | ||||
-rw-r--r-- | databases/postgresql84/distinfo | 12 | ||||
-rw-r--r-- | databases/postgresql84/patches/patch-ad | 78 | ||||
-rw-r--r-- | databases/postgresql84/patches/patch-ae | 45 | ||||
-rw-r--r-- | databases/postgresql84/patches/patch-ai | 6 |
5 files changed, 30 insertions, 188 deletions
diff --git a/databases/postgresql84/Makefile.common b/databases/postgresql84/Makefile.common index dbb1950e147..229ec5a5ec9 100644 --- a/databases/postgresql84/Makefile.common +++ b/databases/postgresql84/Makefile.common @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.common,v 1.3 2009/12/16 13:30:53 adam Exp $ +# $NetBSD: Makefile.common,v 1.4 2010/04/12 09:58:38 adam Exp $ # # This Makefile fragment is included by all PostgreSQL packages built from # the main sources of the PostgreSQL distribution except jdbc-postgresql. @@ -32,13 +32,10 @@ COMMON_FILESDIR?= ${.CURDIR}/../postgresql84/files PATCHDIR?= ${.CURDIR}/../postgresql84/patches # Version numbering scheme: -# # DIST_VERS version number on the postgresql distfile # BASE_VERS pkgsrc-mangled version number (convert pl -> .) -# # Note: Do not forget jdbc-postgresql84 when updating version -# -DIST_VERS?= 8.4.2 +DIST_VERS?= 8.4.3 BASE_VERS?= ${DIST_VERS} BUILDLINK_API_DEPENDS.postgresql84-client+= postgresql84-client>=${BASE_VERS} @@ -49,10 +46,10 @@ PKG_SYSCONFSUBDIR= postgresql .include "../../mk/bsd.prefs.mk" -PGSQL_TEMPLATE.SunOS= solaris -PGSQL_TEMPLATE.IRIX= irix5 -.if !defined(PGSQL_TEMPLATE.${OPSYS}) -PGSQL_TEMPLATE.${OPSYS}= ${LOWER_OPSYS} +PG_TEMPLATE.SunOS= solaris +PG_TEMPLATE.IRIX= irix5 +.if !defined(PG_TEMPLATE.${OPSYS}) +PG_TEMPLATE.${OPSYS}= ${LOWER_OPSYS} .endif PG_SUBPREFIX= # empty @@ -76,7 +73,7 @@ CONFIGURE_ARGS+= --sysconfdir=${PG_ETC_DIR} CONFIGURE_ARGS+= --datadir=${PG_DATA_DIR} CONFIGURE_ARGS+= --localedir=${PG_LOCALE_DIR} CONFIGURE_ARGS+= --with-docdir=${PG_DOC_DIR} -CONFIGURE_ARGS+= --with-template=${PGSQL_TEMPLATE.${OPSYS}} +CONFIGURE_ARGS+= --with-template=${PG_TEMPLATE.${OPSYS}} CONFIGURE_ARGS+= --without-readline CONFIGURE_ARGS+= --without-zlib CONFIGURE_ARGS+= --enable-nls @@ -95,7 +92,6 @@ BUILDLINK_TRANSFORM+= rm:-ffast-math # USE_LIBLTDL is "yes" or "no" depending on whether we're using libltdl # to provide "dlopen" functionality for the PostgreSQL backend. -# .if ${OPSYS} == "Interix" USE_LIBLTDL?= yes .endif @@ -106,58 +102,29 @@ FILES_SUBST+= PG_PREFIX=${PG_PREFIX:Q} .include "../../devel/gettext-lib/buildlink3.mk" post-extract: - if ${TEST} -d ${WRKSRC}/src; then \ - rm -f ${WRKSRC}/src/Makefile.custom; \ - cp -f ${COMMON_FILESDIR}/Makefile.custom \ - ${WRKSRC}/src/Makefile.custom; \ - rm -f ${WRKSRC}/src/Makefile.shlib; \ - cp -f ${COMMON_FILESDIR}/Makefile.libtool \ - ${WRKSRC}/src/Makefile.shlib; \ - fi - if ${TEST} -d ${WRKSRC}/src/interfaces/libpq; then \ - rm -f ${WRKSRC}/src/interfaces/libpq/GNUmakefile; \ - cp -f ${COMMON_FILESDIR}/GNUmakefile.libpq \ - ${WRKSRC}/src/interfaces/libpq/GNUmakefile; \ - fi - if ${TEST} -d ${WRKSRC}/src/interfaces/libpgtcl; then \ - rm -f ${WRKSRC}/src/interfaces/libpgtcl/GNUmakefile; \ - cp -f ${COMMON_FILESDIR}/GNUmakefile.libpgtcl \ - ${WRKSRC}/src/interfaces/libpgtcl/GNUmakefile; \ - fi + cp -f ${COMMON_FILESDIR}/Makefile.custom ${WRKSRC}/src/Makefile.custom + cp -f ${COMMON_FILESDIR}/Makefile.libtool ${WRKSRC}/src/Makefile.shlib .if !empty(USE_LIBLTDL:M[yY][eE][sS]) - if ${TEST} -d ${WRKSRC}/src/backend/port/dynloader; then \ - template=${PGSQL_TEMPLATE.${OPSYS}:Q}; \ - rm -f ${WRKSRC}/src/backend/port/dynloader/$$template.[ch]; \ - cp -f ${COMMON_FILESDIR}/dynloader-ltdl.h \ - ${WRKSRC}/src/backend/port/dynloader/$$template.h; \ - ${ECHO} "static int dummy = 0;" \ - >${WRKSRC}/src/backend/port/dynloader/$$template.c - fi + cp -f ${COMMON_FILESDIR}/dynloader-ltdl.h \ + ${WRKSRC}/src/backend/port/dynloader/${PG_TEMPLATE.${OPSYS}:Q}.h + ${ECHO} "static int dummy = 0;" \ + > ${WRKSRC}/src/backend/port/dynloader/${PG_TEMPLATE.${OPSYS}:Q}.c .endif - if ${TEST} -d ${WRKSRC}/src/template; then \ - touch ${WRKSRC}/src/template/dragonfly; \ - fi - if ${TEST} -d ${WRKSRC}/src/backend/port/dynloader; then \ - cp ${WRKSRC}/src/backend/port/dynloader/freebsd.c \ - ${WRKSRC}/src/backend/port/dynloader/dragonfly.c; \ - cp ${WRKSRC}/src/backend/port/dynloader/freebsd.h \ - ${WRKSRC}/src/backend/port/dynloader/dragonfly.h; \ - fi - if ${TEST} -d ${WRKSRC}/src/include/port; then \ - cp ${WRKSRC}/src/include/port/freebsd.h \ - ${WRKSRC}/src/include/port/dragonfly.h; \ - fi - if ${TEST} -d ${WRKSRC}/src/makefiles; then \ - cp ${WRKSRC}/src/makefiles/Makefile.freebsd \ - ${WRKSRC}/src/makefiles/Makefile.dragonfly; \ - fi + touch ${WRKSRC}/src/template/dragonfly + cp ${WRKSRC}/src/backend/port/dynloader/freebsd.c \ + ${WRKSRC}/src/backend/port/dynloader/dragonfly.c + cp ${WRKSRC}/src/backend/port/dynloader/freebsd.h \ + ${WRKSRC}/src/backend/port/dynloader/dragonfly.h + cp ${WRKSRC}/src/include/port/freebsd.h \ + ${WRKSRC}/src/include/port/dragonfly.h + cp ${WRKSRC}/src/makefiles/Makefile.freebsd \ + ${WRKSRC}/src/makefiles/Makefile.dragonfly # PGSQL_BLCKSZ is the size in bytes of a PostgreSQL disk page or block. # This also limits the size of a tuple. The valid values are powers # of 2 up to 32768, and the default size is 8196 (hardcoded in the # PostgreSQL sources). Please don't change this value unless you know # what you are doing. -# BUILD_DEFS+= PGSQL_BLCKSZ .if defined(PGSQL_BLCKSZ) diff --git a/databases/postgresql84/distinfo b/databases/postgresql84/distinfo index 5aa7000162d..f0b48042fbd 100644 --- a/databases/postgresql84/distinfo +++ b/databases/postgresql84/distinfo @@ -1,15 +1,13 @@ -$NetBSD: distinfo,v 1.3 2009/12/16 13:30:53 adam Exp $ +$NetBSD: distinfo,v 1.4 2010/04/12 09:58:38 adam Exp $ -SHA1 (postgresql-8.4.2.tar.bz2) = a617698ef3b41a74fe2c4af346172eb03e7f8a7f -RMD160 (postgresql-8.4.2.tar.bz2) = 8d0030f185e9581bec6e2a0df903596579621bce -Size (postgresql-8.4.2.tar.bz2) = 13600699 bytes +SHA1 (postgresql-8.4.3.tar.bz2) = 5edad69e797620c4f27520cb1986bc78c173d67a +RMD160 (postgresql-8.4.3.tar.bz2) = 4f8bba582138ea8d77059851c361d6f2fb838e52 +Size (postgresql-8.4.3.tar.bz2) = 13645257 bytes SHA1 (patch-aa) = aeeeaafb38e75d8e8f6639280e997ba4c905b45f SHA1 (patch-ab) = 3cf9c7f0f812d2e41681281538c3f707cec232c3 SHA1 (patch-ac) = 0b82797d0b80bdd1e9b5f3de4989fe3848adf6cb -SHA1 (patch-ad) = 5612e447bbb76e81f72d39ad0153b9f77d47f653 -SHA1 (patch-ae) = 8b3e47320dfe05d94b769c9b079fd7ca6d26f5d6 SHA1 (patch-af) = a73769cf05223d2ee06249c9e69c85038c2cd936 SHA1 (patch-ag) = 85dac95e40efc16270885087f868aeb76e1b9214 SHA1 (patch-ah) = 25102dce1b9b22385353af23500636fb18e3bf64 -SHA1 (patch-ai) = 46e896a71d09af71d6b0c8ae5a8b0d5f35424482 +SHA1 (patch-ai) = 0d6f536f7593e362ec216eafa73c718ad6bed8fc SHA1 (patch-an) = a1e7f421a101cf9ccddcaf3ce17aa1847cf76310 diff --git a/databases/postgresql84/patches/patch-ad b/databases/postgresql84/patches/patch-ad deleted file mode 100644 index 01ef2528733..00000000000 --- a/databases/postgresql84/patches/patch-ad +++ /dev/null @@ -1,78 +0,0 @@ -$NetBSD: patch-ad,v 1.1.1.1 2009/07/29 06:26:18 adam Exp $ - ---- src/backend/port/dynloader/netbsd.c.orig 2008-04-05 10:45:52.000000000 +0200 -+++ src/backend/port/dynloader/netbsd.c -@@ -42,64 +42,30 @@ static char sccsid[] = "@(#)dl.c 5.4 (Be - - #include "dynloader.h" - --static char error_message[BUFSIZ]; -+#ifndef HAVE_DLOPEN - - char * --BSD44_derived_dlerror(void) -+pg_dlerror(void) - { -- static char ret[BUFSIZ]; -- -- strcpy(ret, error_message); -- error_message[0] = 0; -- return (ret[0] == 0) ? NULL : ret; -+ return "dynaloader unsupported"; - } - - void * --BSD44_derived_dlopen(const char *file, int num) -+pg_dlopen(const char *file, int num) - { --#if !defined(HAVE_DLOPEN) -- snprintf(error_message, sizeof(error_message), -- "dlopen (%s) not supported", file); -+ elog(ERROR, "dynamic load not supported"); - return NULL; --#else -- void *vp; -- -- if ((vp = dlopen((char *) file, num)) == NULL) -- snprintf(error_message, sizeof(error_message), -- "dlopen (%s) failed: %s", file, dlerror()); -- return vp; --#endif - } - - void * --BSD44_derived_dlsym(void *handle, const char *name) -+pg_dlsym(void *handle, const char *name) - { --#if !defined(HAVE_DLOPEN) -- snprintf(error_message, sizeof(error_message), -- "dlsym (%s) failed", name); - return NULL; --#elif defined(__ELF__) -- return dlsym(handle, name); --#else -- void *vp; -- char buf[BUFSIZ]; -- -- if (*name != '_') -- { -- snprintf(buf, sizeof(buf), "_%s", name); -- name = buf; -- } -- if ((vp = dlsym(handle, (char *) name)) == NULL) -- snprintf(error_message, sizeof(error_message), -- "dlsym (%s) failed", name); -- return vp; --#endif - } - - void --BSD44_derived_dlclose(void *handle) -+pg_dlclose(void *handle) - { --#if defined(HAVE_DLOPEN) -- dlclose(handle); --#endif - } -+ -+#endif /* ! HAVE_DLOPEN */ diff --git a/databases/postgresql84/patches/patch-ae b/databases/postgresql84/patches/patch-ae deleted file mode 100644 index bc151f79a02..00000000000 --- a/databases/postgresql84/patches/patch-ae +++ /dev/null @@ -1,45 +0,0 @@ -$NetBSD: patch-ae,v 1.1.1.1 2009/07/29 06:26:18 adam Exp $ - ---- src/backend/port/dynloader/netbsd.h.orig 2005-01-01 07:00:32.000000000 +0900 -+++ src/backend/port/dynloader/netbsd.h -@@ -21,19 +21,7 @@ - - #include "utils/dynamic_loader.h" - --/* -- * Dynamic Loader on NetBSD 1.0. -- * -- * this dynamic loader uses the system dynamic loading interface for shared -- * libraries (ie. dlopen/dlsym/dlclose). The user must specify a shared -- * library as the file to be dynamically loaded. -- * -- * agc - I know this is all a bit crufty, but it does work, is fairly -- * portable, and works (the stipulation that the d.l. function must -- * begin with an underscore is fairly tricky, and some versions of -- * NetBSD (like 1.0, and 1.0A pre June 1995) have no dlerror.) -- */ -- -+#ifdef HAVE_DLOPEN - /* - * In some older systems, the RTLD_NOW flag isn't defined and the mode - * argument to dlopen must always be 1. The RTLD_GLOBAL flag is wanted -@@ -47,14 +35,11 @@ - #define RTLD_GLOBAL 0 - #endif - --#define pg_dlopen(f) BSD44_derived_dlopen((f), RTLD_NOW | RTLD_GLOBAL) --#define pg_dlsym BSD44_derived_dlsym --#define pg_dlclose BSD44_derived_dlclose --#define pg_dlerror BSD44_derived_dlerror -+#define pg_dlopen(f) dlopen((f), RTLD_NOW | RTLD_GLOBAL) -+#define pg_dlsym dlsym -+#define pg_dlclose dlclose -+#define pg_dlerror dlerror - --char *BSD44_derived_dlerror(void); --void *BSD44_derived_dlopen(const char *filename, int num); --void *BSD44_derived_dlsym(void *handle, const char *name); --void BSD44_derived_dlclose(void *handle); -+#endif /* HAVE_DLOPEN */ - - #endif /* PORT_PROTOS_H */ diff --git a/databases/postgresql84/patches/patch-ai b/databases/postgresql84/patches/patch-ai index b8029ca5c58..6aae6088192 100644 --- a/databases/postgresql84/patches/patch-ai +++ b/databases/postgresql84/patches/patch-ai @@ -1,6 +1,6 @@ -$NetBSD: patch-ai,v 1.1.1.1 2009/07/29 06:26:19 adam Exp $ +$NetBSD: patch-ai,v 1.2 2010/04/12 09:58:39 adam Exp $ ---- src/timezone/zic.c.orig 2009-06-11 16:49:15.000000000 +0200 +--- src/timezone/zic.c.orig 2010-03-16 07:17:04.000000000 +0000 +++ src/timezone/zic.c @@ -120,51 +120,51 @@ struct zone @@ -69,7 +69,7 @@ $NetBSD: patch-ai,v 1.1.1.1 2009/07/29 06:26:19 adam Exp $ static void setboundaries(void); -static pg_time_t tadd(const pg_time_t t1, long t2); +static pg_time_t tadd(const pg_time_t t1, const long t2); - static void usage(void); + static void usage(FILE *stream, int status); static void writezone(const char *name, const char *string); -static int yearistype(int year, const char *type); +static int yearistype(const int year, const char *type); |