blob: 1de7d96d4c0e6943a79dca3a5581766235ce64df [file] [log] [blame]
#!/bin/bash
source ssk.env
cd $PD
source bin/setenv.sh
cd $TD
scriptname=`basename $0`
myOS=`uname | tr "cyglinsu" "CYGLINSU" | cut -b1-3`
if [ ! -f .cacheserver.ser ]
then
exit
fi
case $myOS in
( "SUN" ) myBits=64 ;;
( * )
if [ $HOSTTYPE != `basename $HOSTTYPE 64` ]
then
myBits=64
else
myBits=32
fi
;;
esac
sscript=`basename $scriptname 64`
if [ $scriptname != $sscript ]
then
myBits=64
noJava="NO_64_BIT_JAVA_INSTALL_SPECIFIED"
else
noJava=""
fi
var_name=GF_JAVA_${myOS}_${myBits}
if [ $myBits -eq 64 ]
then
export GF_JAVA=${!var_name:-${noJava:-""}}
else
export GF_JAVA=${!var_name:-""}
fi
if [ $myOS == "CYG" ]
then
$PD/bin/cacheserver.bat stop -dir=.
else
$PD/bin/cacheserver stop -dir=.
fi
stat=$?
sleep 10
if [ $stat -ne 0 ]
then
AWK=`which nawk 2>/dev/null`
killCmd="kill"
if [ $myOS == "CYG" ]
then
killCmd="/bin/kill -f"
fi
cspid=`grep 'Process ID:' cacheserver.log | ${AWK:-awk} '{print $NF}'`
waitCnt=1
kill -0 $cspid 2>/dev/null
stillRunning=$?
while [ $stillRunning -eq 0 ]
do
if [ $waitCnt -gt 4 ]
then
$killCmd -9 $cspid >/dev/null 2>&1
break
else
$killCmd $cspid >/dev/null 2>&1
fi
((waitCnt++))
sleep 5
kill -0 $cspid 2>/dev/null
stillRunning=$?
done
rm -f .cacheserver.ser
fi