mariadb/storage/ndb/bin/check-regression.sh

180 lines
4.9 KiB
Bash
Executable file

#!/bin/sh
# NAME
# check-regression.sh
#
# SYNOPSIS
# check-regression.sh
#
# DESCRIPTION
#
# This scrip must be run before any major cvs checkins are done.
# It will perform a number of regression tests to check that
# nothing is broken.
#
# OPTIONS
#
# EXAMPLES
#
#
# ENVIRONMENT
# NDB_PROJ_HOME Home dir for ndb
# verbose verbose printouts
#
# FILES
# $NDB_PROJ_HOME/lib/funcs.sh general shell script functions
#
#
# SEE ALSO
#
# DIAGNOSTICTS
#
#
# VERSION
# 1.0
#
# AUTHOR
#
#
. $NDB_PROJ_HOME/lib/funcs.sh # Load some good stuff
synopsis="check-regression.sh"
progname=`basename $0`
numOfTestsOK=0
numOfTestsFailed=0
LOG=check-regression.`date '+%Y-%m-%d'`
executeTest()
{
eval "$@" | tee -a $LOG
if [ $? -eq 0 ]
then
echo "SUCCESS: $@"
numOfTestsOK=`expr $numOfTestsOK + 1`
else
echo "FAILED: $@"
numOfTestsFailed=`expr $numOfTestsFailed + 1`
fi
}
#
# INFO
#
trace "Starting: `date`"
trace "NDB_PROJ_HOME = $NDB_PROJ_HOME"
trace "NDB_TOP = $NDB_TOP"
#
# THE TESTS TO EXECUTE
#
# Testsuite: testDataBuffers
# Number of tests: 1
executeTest 'drop_tab ' TB00 TB01 TB02 TB03 TB04 TB05 TB06 TB07 TB08 TB09 TB10 TB11 TB12 TB13 TB14 TB15
executeTest 'testDataBuffers'
executeTest 'drop_tab ' TB00 TB01 TB02 TB03 TB04 TB05 TB06 TB07 TB08 TB09 TB10 TB11 TB12 TB13 TB14 TB15
TABLES="T9 T13"
# Testsuite: testBasic
# Number of tests: 16
executeTest 'testBasic -n PkInsert' $TABLES
executeTest 'testBasic -n PkRead' $TABLES
executeTest 'testBasic -n PkUpdate' $TABLES
executeTest 'testBasic -n PkDelete' $TABLES
#executeTest 'testBasic -n UpdateAndRead'
#executeTest 'testBasic -n PkReadAndLocker'
#executeTest 'testBasic -n PkReadAndLocker2'
#executeTest 'testBasic -n PkReadUpdateAndLocker'
#executeTest 'testBasic -n ReadWithLocksAndInserts'
#executeTest 'testBasic -n ReadConsistency'
#executeTest 'testBasic -n PkInsertTwice'
#executeTest 'testBasic -n Fill'
#executeTest 'testBasic -n FillTwice'
#executeTest 'testBasic -n NoCommitSleep'
#executeTest 'testBasic -n NoCommit626'
#executeTest 'testBasic -n NoCommitAndClose'
# Testsuite: testBasicAsynch
# Number of tests: 4
executeTest 'testBasicAsynch -n PkInsertAsynch' $TABLES
executeTest 'testBasicAsynch -n PkReadAsynch' $TABLES
executeTest 'testBasicAsynch -n PkUpdateAsynch' $TABLES
executeTest 'testBasicAsynch -n PkDeleteAsynch' $TABLES
# Testsuite: testDict
# Number of tests: 6
#executeTest 'testDict -n CreateAndDrop'
#executeTest 'testDict -n CreateAndDropWithData'
#executeTest 'testDict -n CreateAndDropDuring'
#executeTest 'testDict -n CreateInvalidTables'
#executeTest 'testDict -n CreateTableWhenDbIsFull'
#executeTest 'testDict -n CreateMaxTables'
# Testsuite: testScan
# Number of tests: 34
#executeTest 'testScan -n ScanRead'
#executeTest 'testScan -n ScanRead16'
executeTest 'testScan -n ScanRead240' $TABLES
executeTest 'testScan -n ScanUpdate' $TABLES
executeTest 'testScan -n ScanUpdate2' $TABLES
executeTest 'testScan -n ScanDelete' $TABLES
executeTest 'testScan -n ScanDelete2' $TABLES
#executeTest 'testScan -n ScanUpdateAndScanRead'
#executeTest 'testScan -n ScanReadAndLocker'
#executeTest 'testScan -n ScanReadAndPkRead'
#executeTest 'testScan -n ScanRead488'
#executeTest 'testScan -n ScanWithLocksAndInserts'
#executeTest 'testScan -n ScanReadAbort'
#executeTest 'testScan -n ScanReadAbort15'
#executeTest 'testScan -n ScanReadAbort16'
#executeTest 'testScan -n ScanUpdateAbort16'
#executeTest 'testScan -n ScanReadAbort240'
#executeTest 'testScan -n ScanReadRestart'
#executeTest 'testScan -n ScanReadRestart16'
#executeTest 'testScan -n ScanReadRestart32'
#executeTest 'testScan -n ScanUpdateRestart'
#executeTest 'testScan -n ScanUpdateRestart16'
#executeTest 'testScan -n CheckGetValue'
#executeTest 'testScan -n CloseWithoutStop'
#executeTest 'testScan -n NextScanWhenNoMore'
#executeTest 'testScan -n ExecuteScanWithoutOpenScan'
#executeTest 'testScan -n OnlyOpenScanOnce'
#executeTest 'testScan -n OnlyOneOpInScanTrans'
#executeTest 'testScan -n OnlyOneOpBeforeOpenScan'
#executeTest 'testScan -n OnlyOneScanPerTrans'
#executeTest 'testScan -n NoCloseTransaction'
#executeTest 'testScan -n CheckInactivityTimeOut'
#executeTest 'testScan -n CheckInactivityBeforeClose'
#executeTest 'testScan -n CheckAfterTerror'
# Testsuite: testScanInterpreter
# Number of tests: 1
#executeTest 'testScanInterpreter -n ScanLessThan'
TABLES="T6 T13"
# Testsuite: testSystemRestart
# Number of tests: 4
executeTest 'testSystemRestart -l 1 -n SR1' $TABLES
executeTest 'testSystemRestart -l 1 -n SR2' $TABLES
#executeTest 'testSystemRestart -n SR_UNDO'
#executeTest 'testSystemRestart -n SR_FULLDB'
# TESTS FINISHED
trace "Finished: `date`"
#
# TEST SUMMARY
#
if [ $numOfTestsFailed -eq 0 ]
then
echo "-- REGRESSION TEST SUCCESSFUL --"
else
echo "-- REGRESSION TEST FAILED!! --"
fi
echo "Number of successful tests: $numOfTestsOK"
echo "Number of failed tests : $numOfTestsFailed"