summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorunknown <sasha@mysql.sashanet.com>2000-12-08 17:32:30 -0700
committerunknown <sasha@mysql.sashanet.com>2000-12-08 17:32:30 -0700
commit6a095ea533f50edc6686c5f2c339e7dc21d669f4 (patch)
treee66df346c787c8923b2b2e18de64353f769c8e87
parent1ab28e5ea91466bd422bd9fef2973533252a04e1 (diff)
downloadmariadb-git-6a095ea533f50edc6686c5f2c339e7dc21d669f4.tar.gz
mysql-test/mysql-test-run
reversed gcov to work the old way - the worst thing that can happen if slave and master execute the same code at the same time is that we get a lesser count on the code branch execution, but in any case, it will be at least counted once, which is really all we care. Besides, the source tracking is most likely not thread safe, but this is ok for the same reason. mysql-test/mysql-test-run: reversed gcov to work the old way - the worst thing that can happen if slave and master execute the same code at the same time is that we get a lesser count on the code branch execution, but in any case, it will be at least counted once, which is really all we care. Besides, the source tracking is most likely not thread safe, but this is ok for the same reason.
-rwxr-xr-xmysql-test/mysql-test-run40
1 files changed, 10 insertions, 30 deletions
diff --git a/mysql-test/mysql-test-run b/mysql-test/mysql-test-run
index 865839aecda..90338c66acd 100755
--- a/mysql-test/mysql-test-run
+++ b/mysql-test/mysql-test-run
@@ -57,11 +57,8 @@ TIMEFILE="$MYSQL_TEST_DIR/var/tmp/mysqltest-time"
DASHBLANK="---- ---- -------"
MYSQLD_SRC_DIRS="strings mysys include extra regex isam merge myisam \
myisammrg heap sql"
-GCOV_MASTER_MSG=/tmp/mysqld-master-gcov.out #gcov output
-GCOV_MASTER_ERR=/tmp/mysqld-master-gcov.err
-GCOV_SLAVE_MSG=/tmp/mysqld-slave-gcov.out #gcov output
-GCOV_SLAVE_ERR=/tmp/mysqld-slave-gcov.err
-GCOV_SLAVE_SRC=/tmp/mysqld-slave-src/
+GCOV_MSG=/tmp/mysqld-gcov.out #gcov output
+GCOV_ERR=/tmp/mysqld-gcov.err
[ -d $MY_TMP_DIR ] || mkdir -p $MY_TMP_DIR
@@ -130,6 +127,7 @@ else
INSTALL_DB="../scripts/install_test_db -bin"
fi
+SLAVE_MYSQLD=$MYSQLD #this will be changed later if we are doing gcov
MYSQL_TEST="$MYSQL_TEST --socket=$MASTER_MYSOCK --database=$DB --user=$DBUSER --password=$DBPASSWD --silent"
@@ -279,38 +277,21 @@ mysql_install_db () {
gcov_prepare () {
$FIND $BASEDIR -name \*.gcov \
-or -name \*.da | $XARGS $RM
- $RM -rf $GCOV_SLAVE_SRC
- for d in $MYSQLD_SRC_DIRS; do
- cd $BASEDIR/$d
- mkdir -p $GCOV_SLAVE_SRC/$d
- for f in *.h *.cc *.c; do
- cp $f $GCOV_SLAVE_SRC/$d
- done
- cd $MYSQL_TEST_DIR
- done
}
gcov_collect () {
$ECHO "Collecting source coverage info..."
- [ -f $GCOV_MASTER_MSG ] && $RM $GCOV_MASTER_MSG
- [ -f $GCOV_MASTER_ERR ] && $RM $GCOV_MASTER_ERR
- [ -f $GCOV_SLAVE_MSG ] && $RM $GCOV_SLAVE_MSG
- [ -f $GCOV_SLAVE_ERR ] && $RM $GCOV_SLAVE_ERR
+ [ -f $GCOV_MSG ] && $RM $GCOV_MSG
+ [ -f $GCOV_ERR ] && $RM $GCOV_ERR
for d in $MYSQLD_SRC_DIRS; do
cd $BASEDIR/$d
for f in *.h *.cc *.c; do
- $GCOV $f 2>>$GCOV_MASTER_ERR >>$GCOV_MASTER_MSG
- done
- cd $MYSQL_TEST_DIR
- cd $GCOV_SLAVE_SRC/$d
- for f in *.h *.cc *.c; do
- $GCOV $f 2>>$GCOV_SLAVE_ERR >>$GCOV_SLAVE_MSG
+ $GCOV $f 2>>$GCOV_ERR >>$GCOV_MSG
done
cd $MYSQL_TEST_DIR
done
- $ECHO "gcov master info in $GCOV_MASTER_MSG, errors in $GCOV_MASTER_ERR"
- $ECHO "gcov slave info in $GCOV_SLAVE_MSG, errors in $GCOV_SLAVE_ERR"
+ $ECHO "gcov info in $GCOV_MSG, errors in $GCOV_ERR"
}
start_master()
@@ -341,7 +322,6 @@ start_master()
start_slave()
{
[ x$SKIP_SLAVE = x1 ] && return
- [ -d $GCOV_SLAVE_SRC ] && cd $GCOV_SLAVE_SRC
slave_args="--no-defaults --server-id=2 \
--master-user=root \
--master-connect-retry=1 \
@@ -358,10 +338,10 @@ start_slave()
if [ x$DO_GDB = x1 ]
then
echo "set args $slave_args" > $GDB_SLAVE_INIT
- xterm -title "Slave" -e gdb -x $GDB_SLAVE_INIT $MYSQLD &
+ xterm -title "Slave" -e gdb -x $GDB_SLAVE_INIT $SLAVE_MYSQLD &
prompt_user "Hit enter to continue after you've started the slave"
- else
- $MYSQLD $slave_args >> $SLAVE_MYERR 2>&1 &
+ else
+ $SLAVE_MYSQLD $slave_args >> $SLAVE_MYERR 2>&1 &
fi
SLAVE_RUNNING=1
}