Commit 44a96391 authored by Tatsuo Ishii's avatar Tatsuo Ishii

Detect postmaster being ready by calling psql -l rathern than

checking postmaster.pid. It's not enough to check the existence
of postmaster.pid since DB recovery might be running.
parent 6217a8c7
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
# #
# #
# IDENTIFICATION # IDENTIFICATION
# $Header: /cvsroot/pgsql/src/bin/pg_ctl/Attic/pg_ctl.sh,v 1.9 2000/02/07 04:31:10 ishii Exp $ # $Header: /cvsroot/pgsql/src/bin/pg_ctl/Attic/pg_ctl.sh,v 1.10 2000/03/14 08:34:47 ishii Exp $
# #
#------------------------------------------------------------------------- #-------------------------------------------------------------------------
CMDNAME=`basename $0` CMDNAME=`basename $0`
...@@ -47,7 +47,7 @@ else ...@@ -47,7 +47,7 @@ else
fi fi
# Check if needed programs actually exist in path # Check if needed programs actually exist in path
for prog in postmaster for prog in postmaster psql
do do
if [ ! -x "$PGPATH/$prog" ] if [ ! -x "$PGPATH/$prog" ]
then then
...@@ -245,7 +245,10 @@ if [ $op = "start" -o $op = "restart" ];then ...@@ -245,7 +245,10 @@ if [ $op = "start" -o $op = "restart" ];then
$ECHO_N "Waiting for postmaster starting up.."$ECHO_C $ECHO_N "Waiting for postmaster starting up.."$ECHO_C
while : while :
do do
if [ ! -f $PIDFILE ];then if psql -l >/dev/null 2>&1
then
break;
else
$ECHO_N "."$ECHO_C $ECHO_N "."$ECHO_C
cnt=`expr $cnt + 1` cnt=`expr $cnt + 1`
if [ $cnt -gt 60 ];then if [ $cnt -gt 60 ];then
...@@ -253,8 +256,6 @@ if [ $op = "start" -o $op = "restart" ];then ...@@ -253,8 +256,6 @@ if [ $op = "start" -o $op = "restart" ];then
exit 1 exit 1
fi fi
sleep 1 sleep 1
else
break
fi fi
done done
$ECHO "done." $ECHO "done."
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment