###########################################################################
#
#                      Begin of configuration section
#
###########################################################################
#  changes:
#  2006-06-01 ML  - STRESS_TEST_SUITEDIR, PROGRAM_CLIENT_1 and other
#                   variables added + plausibility checks
#  2006-01-23 CS  - splitted definition and export of variables
#  2006-01-04 CS  - added $WINDOWS flag and a (commented) part for
#                   Windows machines for easier usage
###########################################################################
WINDOWS=0
STRESS_SUITE="system_2"

MYSQL_BASEDIR="/home/matthias/Arbeit/mysql-5.0/src-1"
MYSQL_TEST="$MYSQL_BASEDIR/client/mysqltest"

# make sure these paths exists
STRESS_TEST_BASEDIR="/home/matthias/Arbeit/mysql-test-extra-5.0/src-1"
STRESS_TEST_WORKDIR="/tmp/systest"
STRESS_TEST_SUITEDIR="$STRESS_TEST_BASEDIR/mysql-test/suite/$STRESS_SUITE"

# WINDOWS=1
# MYSQL_ROOTDIR="D:/MySQL"
# MYSQL_BASEDIR="$MYSQL_ROOTDIR/Server-pro-5.0"
# MYSQL_TEST="$MYSQL_BASEDIR/bin/mysqltest"
# STRESS_TEST_BASEDIR="$MYSQL_ROOTDIR/mysql-test-extra-5.0"
# STRESS_TEST_WORKDIR="$MYSQL_BASEDIR/mysql-test/suite/$STRESS_SUITE/tmp"

DURATION=600                            # Duration in seconds
THREADS=10                              # Number of test threads
LOG_TIME=30                             # Sleep time between logging

SERVER_HOST="localhost"                 # Server hostname:
                                        # <localhost> for local connections through socket
                                        # <some-host-name> for remote connections

SERVER_PORT="9306"                      # Port for remote connections
                                        # port by default - 9306

SERVER_SOCKET="$MYSQL_BASEDIR/mysql-test/var/tmp/master.sock"

#--------------------------------------------------------------------------
# Variables controlling the behaviour of the stress test
#     Some of them must be exported because they are used in test files.
#     Simple solution do not check if export is needed, export them all.
#
# (AFAIK   export <variable>=<value> is a bash only feature)
# At least sol10-sparc-b needs separate var setting and export command
#--------------------------------------------------------------------------
LOAD_LINES=5000                  # Initial # of lines loaded to tables
export LOAD_LINES                #

NUM_VAL=15                       # Random values/segments to use
export NUM_VAL                   #

LOG_UPPER=5000                   # Max Number of rows in log table
export LOG_UPPER                 #

LOG_LOWER=4000                   # Number of rows to truncate log
export LOG_LOWER                 # table to once Max is reached

IUDS_UNIT=10                     # Number of rows used in some routines.
export IUDS_UNIT                 # Default (if unset) is 10.
                                 # Such a routine tries for example to
                                 # insert IUD_UNIT * 2 records.
                                 # ( --> t/tb1_eng1_<operation><1-10>.test )

TB1_ENG1_UPPER=5000              # Approximate maximum number of rows in tb1_eng1
export TB1_ENG1_UPPER            # Default (if unset) is LOAD_LINES.
                                 # t/tb1_eng1_mgr.test cuts the amount of rows to this
                                 # limit.

WITH_TRIGGERS=0                  # 1 Use triggers
export WITH_TRIGGERS             # 0 Do not use triggers

CYCLE=60                         # Length (seconds) of the table size balance
export CYCLE                     # cycle. ( include/tb1_eng1_balance.inc )
                                 # ( --> t/tb1_eng1_<ins|del><1-10>.test )

ddl_sleep=60                     # Every testscript checking ddl sleeps
export ddl_sleep                 # RAND() * ddl_sleep before executing its DDL

debug=0                          # 0 no debugging support
export debug                     #   - do not print many statements/result sets
                                 #   - do not execute additional statements 
                                 #     which might help to clearify why some
                                 #     results are unexpected
                                 # 1 debugging support
                                 #   Additional statements and protocolling
                                 #   Useful if scripts and/or result files are
                                 #   probably wrong.
                                 #   Attention: You will get masses of differences.
                                 # ( --> t/tb1_eng1_<operation><1-10>.test )

ENG1=InnoDB                      # Engine type used for the first table
export ENG1                      # at creation time and when the storage engine
                                 # is altered (-->t/tb1_eng1_engine1.test)

ENG1_ALT=InnoDB                  # Engine type used for the first table
export ENG1_ALT                  # when the storage engine is altered.
                                 # (--> t/tb1_eng1_engine2.test)

ENG2=InnoDB                      # Engine type used for the second table
export ENG2                      # at creation time

ENG_LOG=InnoDB                   # Engine type used for the log table
export ENG_LOG                   # at creation time

PROGRAM_INIT=                    # Testprogram (collection of scripts) which
export PROGRAM_INIT              # should be executed before the stress test
                                 # clients and the monitor are started
                                 # Default (if unset) is 'initdb.txt'.

PROGRAM_MONITOR='monitor.txt'    # Testprogram (Collection of scripts) which
export PROGRAM_MONITOR           # should monitor the ongoing stress test
                                 # Default (if unset) is 'log_tests.txt'.

PROGRAM_CLIENT_1='iuds_tests2.txt' # Testprogram (Collection of scripts) which
export PROGRAM_CLIENT_1          # should be executed by the first stress test client
                                 # Default (if unset) is 'iuds_tests.txt'.

THREADS_CLIENT_1=                # Number of threads for the first client
export THREADS_CLIENT_1          #

#--------------------------------------------------------------------------
# Some plausibilty checks
#--------------------------------------------------------------------------
if [ "$PROGRAM_INIT" = '' ]
then
   PROGRAM_INIT='initdb.txt'
fi
if [ ! -f t/"$PROGRAM_INIT" ]
then
   echo 'Testprogram file $PROGRAM_INIT: t/'"$PROGRAM_INIT"' does not exist'
   echo "abort"
   exit 8
fi
#---------------------------------------------------------------------------
if [ "$PROGRAM_MONITOR" = '' ]
then
   PROGRAM_MONITOR='log_tests.txt'
fi
if [ ! -f t/"$PROGRAM_MONITOR" ]
then
   echo 'Testprogram file $PROGRAM_MONITOR: t/'"$PROGRAM_MONITOR"' does not exist'
   echo "abort"
   exit 8
fi
#---------------------------------------------------------------------------
if [ "$PROGRAM_CLIENT_1" = '' ]
then
   PROGRAM_CLIENT_1='iuds_tests.txt'
fi
if [ ! -f t/"$PROGRAM_CLIENT_1" ]
then
   echo 'Testprogram file $PROGRAM_CLIENT_1: t/'"$PROGRAM_CLIENT_1"' does not exist'
   echo "abort"
   exit 8
fi
if [ "$THREADS_CLIENT_1" = '' ]
then
   THREADS_CLIENT_1=$THREADS
fi
if [ $THREADS_CLIENT_1 -eq 0 ]
then
   echo 'Number of threads for test $THREADS_CLIENT_1: '"$THREADS_CLIENT_1"' is not > 0'
   echo "abort"
   exit 8
fi
############################################################################
#
#                      End of configuration section
#
############################################################################
