Compare commits

...

10 commits

Author SHA1 Message Date
Devrim GÜNDÜZ
fa76030ba9 Update spec file per latest changes. 2007-08-16 09:44:51 +00:00
Devrim GÜNDÜZ
2988959cc2 Backport all changes in devel to stable releases. 2007-08-16 09:22:59 +00:00
Devrim GÜNDÜZ
664035a5f6 - Fixed the directory name where sample conf files and sql files are
installed.
2007-08-16 08:46:14 +00:00
Devrim GÜNDÜZ
d73e5b4371 Fix download URL, and prepare for new release. 2007-08-01 06:48:29 +00:00
Devrim GÜNDÜZ
0f53305a3c Update to pgpool-II 1.2 2007-07-18 11:48:47 +00:00
Devrim GÜNDÜZ
d4968882a5 Update spec files for 1.1.1 2007-06-15 07:43:13 +00:00
Devrim GÜNDÜZ
607104d381 Update to 1.1.1, which includes critical bugfixes. 2007-06-15 07:38:47 +00:00
Devrim GÜNDÜZ
de41208a25 I forgot to add the spec file to CVS :) 2007-06-02 21:10:52 +00:00
Devrim GÜNDÜZ
d197d43743 - Update to 1.1
- added --disable-rpath configure parameter.
- Chowned sample conf files, so that they can work with pgpoolAdmin.
2007-06-02 20:54:44 +00:00
Jason ティビツ
c02d1316cb Initialize branch F-7 for postgresql-pgpool-II 2007-06-02 19:27:39 +00:00
8 changed files with 524 additions and 0 deletions

View file

@ -0,0 +1 @@
pgpool-II-1.2.tar.gz

1
branch Normal file
View file

@ -0,0 +1 @@
F-7

148
pgpool.conf.sample Normal file
View file

@ -0,0 +1,148 @@
#
# pgpool-II configuration file sample
# Host name or IP address to listen on: '*' for all, '' for no TCP/IP
# connections
listen_addresses = 'localhost'
# Port number for pgpool
port = 9999
# Port number for pgpool communication manager
pcp_port = 9898
# Unix domain socket path.
socket_dir = '/var/run'
# Unix domain socket path for pgpool communication manager.
pcp_socket_dir = '/var/run'
# Unix domain socket path for the backend.
backend_socket_dir = '/var/run'
# pgpool communication manager timeout. 0 means no timeout, but strongly not recommended!
pcp_timeout = 10
# number of pre-forked child process
num_init_children = 32
# Number of connection pools allowed for a child process
max_pool = 4
# If idle for this many seconds, child exits. 0 means no timeout.
child_life_time = 300
# If idle for this many seconds, connection to PostgreSQL closes.
# 0 means no timeout.
connection_life_time = 0
# If child_max_connections connections were received, child exits.
# 0 means no exit.
child_max_connections = 0
# Logging directory
logdir = '/var/run'
# Replication mode
replication_mode = false
# Set this to true if you want to avoid deadlock situations when
# replication is enabled. There will, however, be a noticable performance
# degradation. A workaround is to set this to false and insert a /*STRICT*/
# comment at the beginning of the SQL command.
replication_strict = true
# When replication_strict is set to false, there will be a chance for
# deadlocks. Set this to nonzero (in milliseconds) to detect this
# situation and resolve the deadlock by aborting current session.
replication_timeout = 5000
# Load balancing mode, i.e., all SELECTs except in a transaction block
# are load balanced. This is ignored if replication_mode is false.
load_balance_mode = false
# if there's a data mismatch between master and secondary
# start degeneration to stop replication mode
replication_stop_on_mismatch = false
# If true, replicate SELECT statement when load balancing is disabled.
# If false, it is only sended to the master node.
replicate_select = false
# Semicolon separated list of queries to be issued at the end of a session
reset_query_list = 'ABORT; RESET ALL; SET SESSION AUTHORIZATION DEFAULT'
# If true print timestamp on each log line.
print_timestamp = true
# If true, operate in master/slave mode.
master_slave_mode = false
# If true, cache connection pool.
connection_cache = true
# Health check timeout. 0 means no timeout.
health_check_timeout = 20
# Health check period. 0 means no health check.
health_check_period = 0
# Health check user
health_check_user = 'nobody'
# If true, automatically lock table with INSERT statements to keep SERIAL
# data consistency. An /*INSERT LOCK*/ comment has the same effect. A
# /NO INSERT LOCK*/ comment disables the effect.
insert_lock = false
# If true, ignore leading white spaces of each query while pgpool judges
# whether the query is a SELECT so that it can be load balanced. This
# is useful for certain APIs such as DBI/DBD which is known to adding an
# extra leading white space.
ignore_leading_white_space = false
# If true, print all statements to the log. Like the log_statement option
# to PostgreSQL, this allows for observing queries without engaging in full
# debugging.
log_statement = false
# If true, incoming connections will be printed to the log.
log_connections = false
# If true, hostname will be shown in ps status. Also shown in
# connection log if log_connections = true.
# Be warned that this feature will add overhead to look up hostname.
log_hostname = false
# if non 0, run in parallel query mode
parallel_mode = false
# if non 0, use query cache
enable_query_cache = false
#set pgpool2 hostname
pgpool2_hostname = ''
# system DB info
system_db_hostname = 'localhost'
system_db_port = 5432
system_db_dbname = 'pgpool'
system_db_schema = 'pgpool_catalog'
system_db_user = 'pgpool'
system_db_password = ''
# backend_hostname, backend_port, backend_weight
# here are examples
#backend_hostname0 = 'host1'
#backend_port0 = 5432
#backend_weight0 = 1
#backend_hostname1 = 'host2'
#backend_port1 = 5433
#backend_weight1 = 1
# - HBA -
# If true, use pool_hba.conf for client authentication. In pgpool-II
# 1.1, the default value is false. The default value will be true in
# 1.2.
enable_pool_hba = false

40
pgpool.conf.sample.patch Normal file
View file

@ -0,0 +1,40 @@
--- pgpool.conf.sample.old 2007-08-05 05:27:53.000000000 +0300
+++ pgpool.conf.sample 2007-08-05 05:29:01.000000000 +0300
@@ -1,6 +1,5 @@
#
# pgpool-II configuration file sample
-# $Header: /home/fedora/jkeating/pkgs/rpms/postgresql-pgpool-II/F-7/pgpool.conf.sample.patch,v 1.1 2007/08/16 09:22:59 devrim Exp $
# Host name or IP address to listen on: '*' for all, '' for no TCP/IP
# connections
@@ -12,16 +11,14 @@
# Port number for pgpool communication manager
pcp_port = 9898
-# Unix domain socket path. (The Debian package defaults to
-# /var/run/postgresql.)
-socket_dir = '/tmp'
+# Unix domain socket path.
+socket_dir = '/var/run'
# Unix domain socket path for pgpool communication manager.
-# (Debian package defaults to /var/run/postgresql)
-pcp_socket_dir = '/tmp'
+pcp_socket_dir = '/var/run'
-# Unix domain socket path for the backend. Debian package defaults to /var/run/postgresql!
-backend_socket_dir = '/tmp'
+# Unix domain socket path for the backend.
+backend_socket_dir = '/var/run'
# pgpool communication manager timeout. 0 means no timeout, but strongly not recommended!
pcp_timeout = 10
@@ -44,7 +41,7 @@
child_max_connections = 0
# Logging directory
-logdir = '/tmp'
+logdir = '/var/run'
# Replication mode
replication_mode = false

163
pgpool.init Executable file
View file

@ -0,0 +1,163 @@
#!/bin/sh
# pgpool This is the init script for starting up pgpool-II
#
# chkconfig: - 64 36
# description: Starts and stops the pgpool daemon
# processname: pgpool
# pidfile: /var/run/pgpool.pid
#
# v1.0.0 Devrim GUNDUZ <devrim@CommandPrompt.com>
# - Initial version of Red Hat / Fedora init script
if [ -r /etc/sysconfig/pgpool ]; then
. /etc/sysconfig/pgpool
fi
# Source function library.
INITD=/etc/rc.d/init.d
. $INITD/functions
# Get function listing for cross-distribution logic.
TYPESET=`typeset -f|grep "declare"`
# Get config.
. /etc/sysconfig/network
# Check that networking is up.
# We need it for pgpool
[ "${NETWORKING}" = "no" ] && exit 0
# Find the name of the script
NAME=pgpool
# Set defaults for configuration variables
PGPOOLENGINE=/usr/bin
PGPOOLDAEMON=$PGPOOLENGINE/pgpool
PGPOOLCONF=/etc/pgpool.conf
PGPOOLPID=/var/run/pgpool.pid
PGPOOLLOG=/var/log/pgpool.log
test -x $PGPOOLDAEMON || exit 5
# Create the log file if it does not exist
if [ ! -r $PGPOOLLOG ]
then
touch $PGPOOLLOG
fi
# Check whether the config file exists or not
if [ ! -r /etc/pgpool.conf ]
then
echo "$PGPOOLCONF not found"
RETVAL=1
failure
exit
fi
script_result=0
start(){
PGPOOL_START=$"Starting ${NAME} service: "
echo -n "$PGPOOL_START"
$PGPOOLDAEMON -f $PGPOOLCONF $OPTS & >> "$PGPOOLLOG" 2>&1 < /dev/null
sleep 2
pid=`pidof -s "$PGPOOLDAEMON"`
if [ $pid ]
then
success "$PGPOOL_START"
touch /var/lock/subsys/${NAME}
echo
else
failure "$PSQL_START"
echo
script_result=1
fi
}
stop(){
echo -n $"Stopping ${NAME} service: "
if [ $UID -ne 0 ]; then
RETVAL=1
failure
else
killproc /usr/bin/pgpool
RETVAL=$?
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/${NAME}
fi;
echo
return $RETVAL
}
switch() {
echo -n $"Sending switchover request to $NAME "
$PGPOOLDAEMON switch >> "$PGPOOLLOG" 2>&1 < /dev/null
RETVAL=$?
echo
if [ $RETVAL -eq 0 ]
then
echo_success
else
echo_failure
fi
echo
}
restart(){
stop
start
}
reload(){
echo -n $"Reloading ${NAME}: "
if [ -n "`pidfileofproc $PGPOOLDAEMON`" ] ; then
killproc $PGPOOLDAEMON -HUP
else
failure $"Reloading ${NAME}"
fi
RETVAL=$?
echo
}
condrestart(){
[ -e /var/lock/subsys/${NAME} ] && restart
}
condstop(){
[ -e /var/lock/subsys/${NAME} ] && stop
}
# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
switch)
switch
;;
status)
status pgpool
script_result=$?
;;
restart)
restart
;;
reload|force-reload)
reload
;;
condrestart)
condrestart
;;
condstop)
condstop
;;
*)
echo $"Usage: $0 {start|stop|switch|status|restart|condrestart|condstop|reload|force-reload}"
exit 1
esac
exit $script_result

6
pgpool.sysconfig Normal file
View file

@ -0,0 +1,6 @@
# Options for pgpool
# -n: don't run in daemon mode. does not detatch control tty
# -d: debug mode. lots of debug information will be printed
#OPTS=" -d -n"

164
postgresql-pgpool-II.spec Normal file
View file

@ -0,0 +1,164 @@
%define short_name pgpool-II
Summary: Pgpool is a connection pooling/replication server for PostgreSQL
Name: postgresql-%{short_name}
Version: 1.2
Release: 4%{?dist}
License: BSD
Group: Applications/Databases
URL: http://pgpool.projects.PostgreSQL.org/pgpool-II/en
Source0: http://pgfoundry.org/frs/download.php/1419/%{short_name}-%{version}.tar.gz
Source1: pgpool.init
Source2: pgpool.sysconfig
Patch1: pgpool.conf.sample.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: postgresql-devel pam-devel
Obsoletes: postgresql-pgpool
%description
pgpool-II is a inherited project of pgpool (to classify from
pgpool-II, it is sometimes called as pgpool-I). For those of
you not familiar with pgpool-I, it is a multi-functional
middle ware for PostgreSQL that features connection pooling,
replication and load balancing functions. pgpool-I allows a
user to connect at most two PostgreSQL servers for higher
availability or for higher search performance compared to a
single PostgreSQL server.
pgpool-II, on the other hand, allows multiple PostgreSQL
servers (DB nodes) to be connected, which enables queries
to be executed simultaneously on all servers. In other words,
it enables "parallel query" processing. Also, pgpool-II can
be started as pgpool-I by changing configuration parameters.
pgpool-II that is executed in pgpool-I mode enables multiple
DB nodes to be connected, which was not possible in pgpool-I.
%package devel
Summary: The development files for pgpool-II
Group: Development/Libraries
Requires: %{name} = %{version}
%description devel
Development headers and libraries for pgpool-II.
%prep
%setup -q -n %{short_name}-%{version}
%patch1 -p0
%build
%configure --with-pgsql-includedir=%{_includedir}/pgsql --with-pgsql-lib=%{_libdir}/pgsql --disable-static --with-pam --disable-rpath
make %{?_smp_flags}
%install
rm -rf %{buildroot}
make %{?_smp_flags} DESTDIR=%{buildroot} install
install -d %{buildroot}%{_datadir}/%{name}
mv %{buildroot}/%{_sysconfdir}/*.conf.sample %{buildroot}%{_datadir}/%{name}
mv %{buildroot}%{_datadir}/%{short_name}/system_db.sql %{buildroot}%{_datadir}/%{name}
mv %{buildroot}%{_datadir}/%{short_name}/pgpool.pam %{buildroot}%{_datadir}/%{name}
install -d %{buildroot}%{_initrddir}
install -m 755 %{SOURCE1} %{buildroot}%{_initrddir}/pgpool
install -d %{buildroot}%{_sysconfdir}/sysconfig
install -m 755 %{SOURCE2} %{buildroot}%{_sysconfdir}/sysconfig/pgpool
# nuke libtool archive and static lib
rm -f %{buildroot}%{_libdir}/libpcp.{a,la}
%clean
rm -rf %{buildroot}
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%defattr(-,root,root,-)
%doc README README.euc_jp TODO COPYING INSTALL AUTHORS ChangeLog NEWS doc/pgpool-en.html doc/pgpool-ja.html doc/pgpool.css doc/tutorial-en.html doc/tutorial-ja.html
%{_bindir}/pgpool
%{_bindir}/pcp_attach_node
%{_bindir}/pcp_detach_node
%{_bindir}/pcp_node_count
%{_bindir}/pcp_node_info
%{_bindir}/pcp_proc_count
%{_bindir}/pcp_proc_info
%{_bindir}/pcp_stop_pgpool
%{_bindir}/pcp_systemdb_info
%{_bindir}/pg_md5
%{_mandir}/man8/pgpool*
%{_datadir}/%{name}/system_db.sql
%{_libdir}/libpcp.so.*
%attr(764,root,apache) %{_datadir}/%{name}/*.conf.sample
%{_datadir}/%{name}/pgpool.pam
%{_initrddir}/pgpool
%config(noreplace) %{_sysconfdir}/sysconfig/pgpool
%files devel
%defattr(-,root,root,-)
%{_includedir}/pcp.h
%{_includedir}/pool_type.h
%{_libdir}/libpcp.so
%changelog
* Thu Aug 16 2007 Devrim Gunduz <devrim@CommandPrompt.com> 1.2-4
- Fixed the directory name where sample conf files and sql files
are installed.
* Sun Aug 5 2007 Devrim Gunduz <devrim@CommandPrompt.com> 1.2-3
- Added a patch for sample conf file to use Fedora defaults
* Sun Aug 5 2007 Devrim Gunduz <devrim@CommandPrompt.com> 1.2-2
- Added an init script for pgpool
- Added /etc/sysconfig/pgpool
* Wed Aug 1 2007 Devrim Gunduz <devrim@CommandPrompt.com> 1.2-1
- Update to 1.2
* Fri Jun 15 2007 Devrim Gunduz <devrim@CommandPrompt.com> 1.1.1-1
- Update to 1.1.1
* Sat Jun 2 2007 Devrim Gunduz <devrim@CommandPrompt.com> 1.1-1
- Update to 1.1
- added --disable-rpath configure parameter.
- Chowned sample conf files, so that they can work with pgpoolAdmin.
* Thu Apr 22 2007 Devrim Gunduz <devrim@CommandPrompt.com> 1.0.2-4
- Added postgresql-devel as BR, per bugzilla review.
- Added --disable-static flan, per bugzilla review.
- Removed superfluous manual file installs, per bugzilla review.
* Thu Apr 22 2007 Devrim Gunduz <devrim@CommandPrompt.com> 1.0.2-3
- Rebuilt for the correct tarball
- Fixed man8 file ownership, per bugzilla review #229321
* Tue Feb 20 2007 Jarod Wilson <jwilson@redhat.com> 1.0.2-2
- Create proper devel package, drop -libs package
- Nuke rpath
- Don't install libtool archive and static lib
- Clean up %%configure line
- Use proper %%_smp_mflags
- Install config files properly, without .sample on the end
- Preserve timestamps on header files
* Tue Feb 20 2007 Devrim Gunduz <devrim@commandprompt.com> 1.0.2-1
- Update to 1.0.2-1
* Mon Oct 02 2006 Devrim Gunduz <devrim@commandprompt.com> 1.0.1-5
- Rebuilt
* Mon Oct 02 2006 Devrim Gunduz <devrim@commandprompt.com> 1.0.1-4
- Added -libs and RPM
- Fix .so link problem
- Cosmetic changes to spec file
* Thu Sep 27 2006 - Devrim GUNDUZ <devrim@commandprompt.com> 1.0.1-3
- Fix spec, per Yoshiyuki Asaba
* Thu Sep 26 2006 - Devrim GUNDUZ <devrim@commandprompt.com> 1.0.1-2
- Fixed rpmlint errors
- Fixed download url
- Added ldconfig for .so files
* Thu Sep 21 2006 - David Fetter <david@fetter.org> 1.0.1-1
- Initial build pgpool-II 1.0.1 for PgPool Global Development Group

View file

@ -0,0 +1 @@
8fed94ed12769dacbbf8758b2154e5a7 pgpool-II-1.2.tar.gz