diff options
Diffstat (limited to 'mysql-test/mysql-test-run.sh')
-rw-r--r-- | mysql-test/mysql-test-run.sh | 33 |
1 files changed, 25 insertions, 8 deletions
diff --git a/mysql-test/mysql-test-run.sh b/mysql-test/mysql-test-run.sh index a1e5322f35d..3ff427f6515 100644 --- a/mysql-test/mysql-test-run.sh +++ b/mysql-test/mysql-test-run.sh @@ -18,7 +18,14 @@ TZ=$MY_TZ; export TZ # for UNIX_TIMESTAMP tests to work LOCAL_SOCKET=@MYSQL_UNIX_ADDR@ # For query_cache test -ulimit -n 1024 +case "$SYSTEM" in + SCO_SV | UnixWare | OpenUNIX ) + # do nothing (Causes strange behavior) + ;; + * ) + ulimit -n 1024 + ;; +esac #++ # Program Definitions @@ -312,6 +319,8 @@ while test $# -gt 0; do $ECHO "Note: you will get more meaningful output on a source distribution compiled with debugging option when running tests with --gdb option" fi DO_GDB=1 + EXTRA_MASTER_MYSQLD_OPT="$EXTRA_MASTER_MYSQLD_OPT --gdb" + EXTRA_SLAVE_MYSQLD_OPT="$EXTRA_SLAVE_MYSQLD_OPT --gdb" # This needs to be checked properly # USE_MANAGER=1 USE_RUNNING_SERVER="" @@ -413,8 +422,7 @@ SLAVE_MYERR="$MYSQL_TEST_DIR/var/log/slave.err" CURRENT_TEST="$MYSQL_TEST_DIR/var/log/current_test" SMALL_SERVER="--key_buffer_size=1M --sort_buffer=256K --max_heap_table_size=1M" -export MASTER_MYPORT -export SLAVE_MYPORT +export MASTER_MYPORT SLAVE_MYPORT if [ x$SOURCE_DIST = x1 ] ; then MY_BASEDIR=$MYSQL_TEST_DIR @@ -470,6 +478,7 @@ if [ x$SOURCE_DIST = x1 ] ; then LANGUAGE="$BASEDIR/sql/share/english/" CHARSETSDIR="$BASEDIR/sql/share/charsets" INSTALL_DB="./install_test_db" + MYSQL_FIX_SYSTEM_TABLES="$BASEDIR/scripts/mysql_fix_privilege_tables" else if test -x "$BASEDIR/libexec/mysqld" then @@ -486,7 +495,8 @@ else MYSQL_MANAGER_CLIENT="$BASEDIR/bin/mysqlmanagerc" MYSQL_MANAGER_PWGEN="$BASEDIR/bin/mysqlmanager-pwgen" MYSQL="$BASEDIR/bin/mysql" - INSTALL_DB="./install_test_db -bin" + INSTALL_DB="./install_test_db --bin" + MYSQL_FIX_SYSTEM_TABLES="$BASEDIR/bin/mysql_fix_privilege_tables" if test -d "$BASEDIR/share/mysql/english" then LANGUAGE="$BASEDIR/share/mysql/english/" @@ -499,8 +509,9 @@ fi MYSQL_DUMP="$MYSQL_DUMP --no-defaults -uroot --socket=$MASTER_MYSOCK $EXTRA_MYSQLDUMP_OPT" MYSQL_BINLOG="$MYSQL_BINLOG --no-defaults --local-load=$MYSQL_TMP_DIR $EXTRA_MYSQLBINLOG_OPT" -export MYSQL_DUMP -export MYSQL_BINLOG +MYSQL_FIX_SYSTEM_TABLES="$MYSQL_FIX_SYSTEM_TABLES --host=localhost --port=$MASTER_MYPORT --socket=$MASTER_MYSOCK --user=root --password=" +MYSQL="$MYSQL --host=localhost --port=$MASTER_MYPORT --socket=$MASTER_MYSOCK --user=root --password=" +export MYSQL MYSQL_DUMP MYSQL_BINLOG MYSQL_FIX_SYSTEM_TABLES if [ -z "$MASTER_MYSQLD" ] then @@ -1177,6 +1188,7 @@ run_testcase () master_init_script=$TESTDIR/$tname-master.sh slave_init_script=$TESTDIR/$tname-slave.sh slave_master_info_file=$TESTDIR/$tname.slave-mi + result_file=$tname echo $tname > $CURRENT_TEST SKIP_SLAVE=`$EXPR \( $tname : rpl \) = 0` if [ "$USE_MANAGER" = 1 ] ; then @@ -1226,6 +1238,11 @@ run_testcase () # Note that this must be set to space, not "" for test-reset to work EXTRA_MASTER_OPT=" " ;; + --result-file=*) + result_file=`$ECHO "$EXTRA_MASTER_OPT" | $SED -e "s;--result-file=;;"` + # Note that this must be set to space, not "" for test-reset to work + EXTRA_MASTER_OPT=" " + ;; esac stop_master echo "CURRENT_TEST: $tname" >> $MASTER_MYERR @@ -1283,7 +1300,7 @@ run_testcase () if [ -f $tf ] ; then $RM -f r/$tname.*reject - mysql_test_args="-R r/$tname.result $EXTRA_MYSQL_TEST_OPT" + mysql_test_args="-R r/$result_file.result $EXTRA_MYSQL_TEST_OPT" if [ -z "$DO_CLIENT_GDB" ] ; then `$MYSQL_TEST $mysql_test_args < $tf 2> $TIMEFILE`; else @@ -1318,7 +1335,7 @@ run_testcase () $ECHO "$RES$RES_SPACE [ fail ]" $ECHO error_is - show_failed_diff $tname + show_failed_diff $result_file $ECHO if [ x$FORCE != x1 ] ; then $ECHO "Aborting: $tname failed. To continue, re-run with '--force'." |