summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-db/postgresql/files/postgresql.init-7.3')
-rw-r--r--dev-db/postgresql/files/postgresql.init-7.363
1 files changed, 63 insertions, 0 deletions
diff --git a/dev-db/postgresql/files/postgresql.init-7.3 b/dev-db/postgresql/files/postgresql.init-7.3
new file mode 100644
index 000000000000..82f32fd272e4
--- /dev/null
+++ b/dev-db/postgresql/files/postgresql.init-7.3
@@ -0,0 +1,63 @@
+#!/sbin/runscript
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql/files/postgresql.init-7.3,v 1.1 2006/07/30 22:30:54 chtekk Exp $
+
+opts="${opts} reload"
+
+depend() {
+ use net
+}
+
+checkconfig() {
+ if [ ! -d $PGDATA ]; then
+ eerror "directory not found: $PGDATA"
+ eerror "You should create PGDATA directory first."
+ return 1
+ fi
+}
+
+start() {
+ checkconfig || return 1
+
+ ebegin "Starting PostgreSQL"
+ if [ -f $PGDATA/postmaster.pid ]; then
+ rm $PGDATA/postmaster.pid
+ fi
+ su - $PGUSER -c "/usr/bin/pg_ctl start -D '$PGDATA' -s -l '$PGLOG' -o '$PGOPTS'"
+
+ while :
+ do
+ cnt=$(($cnt + 1))
+ if [ -f "$PGDATA/postmaster.pid" ]; then
+ ret=0
+ break
+ fi
+
+ if [ $cnt -eq 30 ]; then
+ eerror "Please see log file: $PGLOG"
+ ret=1
+ break
+ fi
+ sleep 1
+ done
+ eend $ret
+}
+
+stop() {
+ ebegin "Stopping PostgreSQL"
+ su - $PGUSER -c "/usr/bin/pg_ctl stop -D '$PGDATA' -s -m fast"
+ eend $?
+}
+
+svc_restart() {
+ ebegin "Restarting PostgreSQL"
+ su - $PGUSER -c "/usr/bin/pg_ctl restart -D '$PGDATA' -s -m fast -l '$PGLOG' -o '$PGOPTS'"
+ eend $?
+}
+
+reload() {
+ ebegin "Reloading PostgreSQL configuration"
+ su - $PGUSER -c "/usr/bin/pg_ctl reload -D '$PGDATA' -s"
+ eend $?
+}