140 lines
3.6 KiB
Bash
140 lines
3.6 KiB
Bash
|
#
|
||
|
# Copyright 2003-2005 Sun Microsystems, Inc. All Rights Reserved.
|
||
|
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||
|
#
|
||
|
# This code is free software; you can redistribute it and/or modify it
|
||
|
# under the terms of the GNU General Public License version 2 only, as
|
||
|
# published by the Free Software Foundation.
|
||
|
#
|
||
|
# This code is distributed in the hope that it will be useful, but WITHOUT
|
||
|
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||
|
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||
|
# version 2 for more details (a copy is included in the LICENSE file that
|
||
|
# accompanied this code).
|
||
|
#
|
||
|
# You should have received a copy of the GNU General Public License version
|
||
|
# 2 along with this work; if not, write to the Free Software Foundation,
|
||
|
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||
|
#
|
||
|
# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
|
||
|
# CA 95054 USA or visit www.sun.com if you need additional information or
|
||
|
# have any questions.
|
||
|
#
|
||
|
|
||
|
#!/bin/ksh
|
||
|
#
|
||
|
# Script to build and launch the RMI reliability suite.
|
||
|
# This script is used to run the reliability test for a
|
||
|
# certain number of hours. This script is NOT used when
|
||
|
# running the juicer and benchmark tests as part of the
|
||
|
# jtreg regression suite.
|
||
|
|
||
|
JAVA_HOME=$1
|
||
|
WORK_DIR=$2
|
||
|
RES_DIR=$3
|
||
|
SHELLTOUSE=$4
|
||
|
SUITE_DIR=$5
|
||
|
NHOURS=$6
|
||
|
shift 6
|
||
|
VMOPTS=$*
|
||
|
|
||
|
###You need not export these variables if your reliability run is from this shell itself######
|
||
|
###If you are launching another shell then you need to export these variables.#######
|
||
|
|
||
|
if [ "${WORK_DIR}" = "" ] ; then
|
||
|
WORK_DIR=`pwd`
|
||
|
fi
|
||
|
if [ "${RES_DIR}" = "" ] ; then
|
||
|
RES_DIR=`pwd`/results
|
||
|
fi
|
||
|
if [ "${SHELLTOUSE}" = "" ] ; then
|
||
|
SHELLTOUSE=ksh
|
||
|
fi
|
||
|
if [ "${JAVA_HOME}" = "" ] ; then
|
||
|
WHENCEJAVA=`whence java`
|
||
|
JAVABIN=`dirname ${WHENCEJAVA}`
|
||
|
JAVA_HOME=`dirname ${JAVABIN}`
|
||
|
fi
|
||
|
if [ "${SUITE_DIR}" = "" ] ; then
|
||
|
SUITE_DIR=`pwd`
|
||
|
fi
|
||
|
if [ "${VMOPTS}" = "" ] ; then
|
||
|
VMOPTS=-server -showversion
|
||
|
fi
|
||
|
if [ "${NHOURS}" = "" ] ; then
|
||
|
NHOURS=1
|
||
|
fi
|
||
|
|
||
|
export JAVA_HOME
|
||
|
export WORK_DIR
|
||
|
export RES_DIR
|
||
|
export SHELLTOUSE
|
||
|
export SUITE_DIR
|
||
|
export NHOURS
|
||
|
export VMOPTS
|
||
|
|
||
|
echo "######### launch_reliability script ##########"
|
||
|
echo "JAVA_HOME : $JAVA_HOME "
|
||
|
echo "WORK_DIR : $WORK_DIR "
|
||
|
echo "RES_DIR : $RES_DIR "
|
||
|
echo "SHELLTOUSE : $SHELLTOUSE "
|
||
|
echo "SUITE_DIR : $SUITE_DIR "
|
||
|
echo "NHOURS : $NHOURS "
|
||
|
echo "VMOPTS : $VMOPTS "
|
||
|
|
||
|
|
||
|
# set platform-dependent variables
|
||
|
if [ `uname` = "SunOS" ] ; then
|
||
|
PATH_SEP=":"
|
||
|
|
||
|
elif [ `uname` = "Linux" ] ; then
|
||
|
PATH_SEP=":"
|
||
|
else
|
||
|
PATH_SEP=";"
|
||
|
fi
|
||
|
|
||
|
export PATH_SEP
|
||
|
mainpid=$$
|
||
|
|
||
|
mkdir -p ${RES_DIR}
|
||
|
|
||
|
rm -rf ${WORK_DIR}/rmibench_scratch
|
||
|
rm -rf ${WORK_DIR}/serialbench_scratch
|
||
|
rm -rf ${WORK_DIR}/juicer_scratch
|
||
|
mkdir -p ${WORK_DIR}/rmibench_scratch
|
||
|
mkdir -p ${WORK_DIR}/serialbench_scratch
|
||
|
mkdir -p ${WORK_DIR}/juicer_scratch
|
||
|
|
||
|
echo ""
|
||
|
echo " Starting RMI bench test "
|
||
|
$SHELLTOUSE ${SUITE_DIR}/scripts/run_rmibench.ksh ${WORK_DIR}/rmibench_scratch $RES_DIR $JAVA_HOME $SUITE_DIR $NHOURS $VMOPTS &
|
||
|
pid1=$!
|
||
|
|
||
|
sleep 30
|
||
|
echo ""
|
||
|
echo " Starting Serialization bench test "
|
||
|
$SHELLTOUSE ${SUITE_DIR}/scripts/run_serialbench.ksh ${WORK_DIR}/serialbench_scratch $RES_DIR $JAVA_HOME $SUITE_DIR $NHOURS $VMOPTS &
|
||
|
pid2=$!
|
||
|
|
||
|
sleep 30
|
||
|
echo ""
|
||
|
echo " Starting RMI juicer test "
|
||
|
$SHELLTOUSE ${SUITE_DIR}/scripts/run_juicer.ksh ${WORK_DIR}/juicer_scratch $RES_DIR $JAVA_HOME $SUITE_DIR $NHOURS $VMOPTS &
|
||
|
pid3=$!
|
||
|
|
||
|
sleep 30
|
||
|
echo ""
|
||
|
echo " Waiting for jobs to complete"
|
||
|
|
||
|
wait $pid1 $pid2 $pid3
|
||
|
|
||
|
echo ""
|
||
|
echo " Done RMI reliability testing "
|
||
|
|
||
|
rm -rf ${WORK_DIR}/rmibench_scratch
|
||
|
rm -rf ${WORK_DIR}/serialbench_scratch
|
||
|
rm -rf ${WORK_DIR}/juicer_scratch
|
||
|
|
||
|
kill -9 $mainpid
|
||
|
|