#!/bin/sh # Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License, version 2.0, # as published by the Free Software Foundation. # # This program is also distributed with certain software (including # but not limited to OpenSSL) that is licensed under separate terms, # as designated in a particular file or component or in included license # documentation. The authors of MySQL hereby grant you an additional # permission to link the program and your derivative works with the # separately licensed software that they have included with MySQL. # # This program 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.0, for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA # # Use like this in the ATRT test file: # # max-time: 180 # cmd: atrt-mysqltest # args: --test-file=suite/ndb/t/smoke.test # set -x RUN_DIR=`pwd` RESULT_FILE="$RUN_DIR/mysqltest.out" MYSQL_TEST_DIR=$MYSQL_BASE_DIR/mysql-test RUN_LOG="$RUN_DIR/ndb_testrun.log" # Expected subdirectory by tests written for MTR. mkdir -p $RUN_DIR/tmp $MYSQL_BASE_DIR/bin/ndb_waiter -c $NDB_CONNECTSTRING > $RESULT_FILE cd $MYSQL_BASE_DIR/mysql-test NDB_MGM="$MYSQL_BASE_DIR/storage/ndb/src/mgmclient/ndb_mgm" if [ -f "$MYSQL_BASE_DIR/bin/ndb_mgm" ]; then NDB_MGM="$MYSQL_BASE_DIR/bin/ndb_mgm" fi NDB_NDBD="$MYSQL_BASE_DIR/bin/ndbd" if [ -f "$MYSQL_BASE_DIR/bin/ndbmtd" ]; then NDB_NDBD="$MYSQL_BASE_DIR/bin/ndbmtd" fi if [ -f "$MYSQL_BASE_DIR/storage/ndb/src/kernel/ndbd" ]; then NDB_NDBD="$MYSQL_BASE_DIR/storage/ndb/src/kernel/ndbd" fi if [ -f "$MYSQL_BASE_DIR/storage/ndb/src/kernel/ndbmtd" ]; then NDB_NDBD="$MYSQL_BASE_DIR/storage/ndb/src/kernel/ndbmtd" fi NDB_TOOLS_DIR="$MYSQL_BASE_DIR/bin" if [ -e "$MYSQL_BASE_DIR/storage/ndb/tools" ]; then NDB_TOOLS_DIR="$MYSQL_BASE_DIR/storage/ndb/tools" fi NDB_EXAMPLES_DIR="$MYSQL_BASE_DIR/bin" if [ -e "$MYSQL_BASE_DIR/storage/ndb/ndbapi-examples" ]; then NDB_EXAMPLES_DIR="$MYSQL_BASE_DIR/storage/ndb/ndbapi-examples" fi NDB_EXAMPLES_BINARY="$MYSQL_BASE_DIR/bin/ndbapi_simple" if [ -f "$MYSQL_BASE_DIR/storage/ndb/ndbapi-examples/ndbapi_simple/ndbapi_simple" ]; then NDB_EXAMPLES_BINARY="$MYSQL_BASE_DIR/storage/ndb/ndbapi-examples/ndbapi_simple/ndbapi_simple" fi echo "Default group suffix: $MYSQL_GROUP_SUFFIX" # MYSQL_GROUP_SUFFIX: This is a MySQL client, started as a NDB API client by ATRT. NDB_CONNECTSTRING=$NDB_CONNECTSTRING MYSQL_TEST_DIR=$MYSQL_BASE_DIR/mysql-test \ NDB_TOOLS_OUTPUT=$RUN_LOG NDB_EXAMPLES_OUTPUT=$RUN_LOG NDB_MGM=$NDB_MGM NDB_NDBD=NDB_NDBD \ NDB_TOOLS_DIR=$NDB_TOOLS_DIR NDB_EXAMPLES_DIR=$NDB_EXAMPLES_DIR NDB_EXAMPLES_BINARY=$NDB_EXAMPLES_BINARY \ MYSQLTEST_VARDIR=$RUN_DIR MYSQL_GROUP_SUFFIX=.1.4node \ $MYSQL_BASE_DIR/bin/mysqltest --defaults-file=$MYSQL_HOME/my.cnf \ --tmpdir=$RUN_DIR \ --logdir=$RUN_DIR \ --basedir=$MYSQL_BASE_DIR/mysql-test/ \ --ps-protocol \ --tail-lines=20 \ --database=test \ --nowarnings \ --skip-safemalloc $* | tee -a $RESULT_FILE # Could be added, but would then also need the mtr database: # --include=include/mtr_check.sql \ # We could also run the bootstrap scripts echo "Run complete, result code: '$?'" r=$? f=`grep -c '\[ fail \]' $RESULT_FILE` o=`grep -c '\[ pass \]' $RESULT_FILE` if [ ( $r -eq 0 ) -o ( $o -gt 0 -a $f -eq 0 ) ] then echo "NDBT_ProgramExit: OK" exit 0 fi echo "NDBT_ProgramExit: Failed" exit 1