diff --git a/pgpool-3.2-build-against-postgresql-9.3.patch b/pgpool-3.2-build-against-postgresql-9.3.patch new file mode 100644 index 0000000..f7b1701 --- /dev/null +++ b/pgpool-3.2-build-against-postgresql-9.3.patch @@ -0,0 +1,47 @@ +commit 2e9a136413473e799cf9ee3cd30a9ae40cf8e7c1 +Author: Tatsuo Ishii +AuthorDate: Wed Apr 3 16:20:15 2013 +0900 +Commit: Tatsuo Ishii +CommitDate: Wed Apr 3 16:20:15 2013 +0900 + + Adopt PostgreSQL 9.3. Patch contributed by Asif Rehman. + Slight editing by Tatsuo Ishii. + +diff --git a/sql/pgpool-recovery/pgpool-recovery.c b/sql/pgpool-recovery/pgpool-recovery.c +index 8408e3f..4f47e2c 100644 +--- a/sql/pgpool-recovery/pgpool-recovery.c ++++ b/sql/pgpool-recovery/pgpool-recovery.c +@@ -4,7 +4,7 @@ + * + * pgpool-recovery: exec online recovery script from SELECT statement. + * +- * Copyright (c) 2003-2010 PgPool Global Development Group ++ * Copyright (c) 2003-2013 PgPool Global Development Group + * + * Permission to use, copy, modify, and distribute this software and + * its documentation for any purpose and without fee is hereby +@@ -29,6 +29,9 @@ + #include "catalog/namespace.h" + #include "utils/syscache.h" + #include "utils/builtins.h" /* PostgreSQL 8.4 needs this for textout */ ++#if defined(PG_VERSION_NUM) && (PG_VERSION_NUM >= 90300) ++#include "access/htup_details.h" /* PostgreSQL 9.3 or later needs this */ ++#endif + + #define REMOTE_START_FILE "pgpool_remote_start" + +@@ -198,7 +201,14 @@ get_function_oid(const char *funcname, const char *argtype, const char *nspname) + oid_v = buildoidvector(NULL, 0); + } + ++#if !defined(PG_VERSION_NUM) || (PG_VERSION_NUM < 90300) + nspid = LookupExplicitNamespace(nspname); ++#else ++ /* LookupExplicitNamespace() of PostgreSQL 9.3 or later, has third ++ * argument "missing_ok" which suppresses ERROR exception, but ++ * returns invlaid_oid. See include/catalog/namespace.h */ ++ nspid = LookupExplicitNamespace(nspname, false); ++#endif + elog(DEBUG1, "get_function_oid: oid of \"%s\": %d", nspname, nspid); + + tup = SearchSysCache(PROCNAMEARGSNSP, diff --git a/postgresql-pgpool-II.spec b/postgresql-pgpool-II.spec index e14e6e9..92b51c0 100644 --- a/postgresql-pgpool-II.spec +++ b/postgresql-pgpool-II.spec @@ -8,7 +8,7 @@ Summary: Pgpool is a connection pooling/replication server for PostgreSQL Name: postgresql-%{short_name} Version: 3.2.0 -Release: 3%{?dist} +Release: 4%{?dist} License: BSD Group: Applications/Databases URL: http://pgpool.net @@ -17,6 +17,9 @@ Source1: pgpool.service Source2: pgpool.sysconfig Source3: pgpool.init Patch1: pgpool-3.1-conf.sample.patch +# Apply #ifdef-like patch to allow build against PostgreSQL 9.3 +# ~> upstream (2e9a136413473e799cf) +Patch2: pgpool-3.2-build-against-postgresql-9.3.patch BuildRequires: postgresql-devel pam-devel %if %{systemd_enabled} BuildRequires: systemd @@ -70,6 +73,7 @@ PGPool recovery add-on for PostgreSQL. %prep %setup -q -n %{short_name}-%{version} %patch1 -p1 -b .samplefix +%patch2 -p1 -b .build-for-postgresql-9.3 %build %configure --with-pgsql-includedir=%{_includedir}/pgsql --with-pgsql=%{_libdir}/pgsql --disable-static --with-pam --disable-rpath --sysconfdir=%{_sysconfdir}/%{short_name}/ @@ -190,6 +194,9 @@ fi %doc sample/pgpool_recovery* %changelog +* Thu Sep 19 2013 Pavel Raiskup - 3.2.0-4 +- Rebuilt against PostgreSQL 9.3 (#1007855) + * Sun Aug 04 2013 Fedora Release Engineering - 3.2.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild