提交 316e807c 编写于 作者: H Hui Li

[modify script for arbitrator function]

上级 282d2981
......@@ -96,6 +96,7 @@ echo "second ${HOSTNAME}:7200" >> $TAOS_CFG
echo "serverPort ${NODE}" >> $TAOS_CFG
echo "dataDir $DATA_DIR" >> $TAOS_CFG
echo "logDir $LOG_DIR" >> $TAOS_CFG
echo "debugFlag 135" >> $TAOS_CFG
echo "dDebugFlag 135" >> $TAOS_CFG
echo "mDebugFlag 135" >> $TAOS_CFG
echo "sdbDebugFlag 135" >> $TAOS_CFG
......
#!/bin/sh
# if [ $# != 2 || $# != 3 ]; then
# echo "argument list need input : "
# echo " -s start/stop"
# exit 1
# fi
EXEC_OPTON=
while getopts "n:s:u:x:ct" arg
do
case $arg in
n)
NODE_NAME=$OPTARG
;;
s)
EXEC_OPTON=$OPTARG
;;
c)
CLEAR_OPTION="clear"
;;
t)
SHELL_OPTION="true"
;;
u)
USERS=$OPTARG
;;
x)
SIGNAL=$OPTARG
;;
?)
echo "unkown argument"
;;
esac
done
SCRIPT_DIR=`dirname $0`
cd $SCRIPT_DIR/../
SCRIPT_DIR=`pwd`
cd ../../
TAOS_DIR=`pwd`
BUILD_DIR=$TAOS_DIR/../debug/build
SIM_DIR=$TAOS_DIR/sim
NODE_DIR=$SIM_DIR/arbitrator
EXE_DIR=$BUILD_DIR/bin
LOG_DIR=$NODE_DIR/log
echo "------------ $EXEC_OPTON tarbitrator"
if [ "$EXEC_OPTON" = "start" ]; then
echo "------------ log path: $LOG_DIR"
nohup $EXE_DIR/tarbitrator -p 8000 -d 135 -g $LOG_DIR > /dev/null 2>&1 &
else
#relative path
PID=`ps -ef|grep tarbitrator | grep -v grep | awk '{print $2}'`
if [ -n "$PID" ]; then
sudo kill -9 $PID
sudo pkill -9 tarbitrator
fi
fi
......@@ -13,3 +13,12 @@ while [ -n "$PID" ]; do
fuser -k -n tcp 6030
PID=`ps -ef|grep -w taosd | grep -v grep | awk '{print $2}'`
done
PID=`ps -ef|grep -w tarbitrator | grep -v grep | awk '{print $2}'`
while [ -n "$PID" ]; do
echo kill -9 $PID
pkill -9 tarbitrator
fuser -k -n tcp 6040
PID=`ps -ef|grep -w tarbitrator | grep -v grep | awk '{print $2}'`
done
......@@ -62,6 +62,11 @@ CFG_DIR=$PRG_DIR/cfg
LOG_DIR=$PRG_DIR/log
DATA_DIR=$PRG_DIR/data
ARBITRATOR_PRG_DIR=$SIM_DIR/arbitrator
ARBITRATOR_LOG_DIR=$ARBITRATOR_PRG_DIR/log
chmod -R 777 $PRG_DIR
echo "------------------------------------------------------------------------"
echo "Start TDengine Testing Case ..."
......@@ -72,9 +77,12 @@ echo "CFG_DIR : $CFG_DIR"
rm -rf $LOG_DIR
rm -rf $CFG_DIR
rm -rf $ARBITRATOR_LOG_DIR
mkdir -p $PRG_DIR
mkdir -p $LOG_DIR
mkdir -p $CFG_DIR
mkdir -p $ARBITRATOR_LOG_DIR
TAOS_CFG=$PRG_DIR/cfg/taos.cfg
touch -f $TAOS_CFG
......
system sh/stop_dnodes.sh
system sh/deploy.sh -n dnode1 -i 1
system sh/deploy.sh -n dnode2 -i 2
system sh/deploy.sh -n dnode3 -i 3
system sh/cfg.sh -n dnode1 -c numOfMPeers -v 2
system sh/cfg.sh -n dnode2 -c numOfMPeers -v 2
system sh/cfg.sh -n dnode3 -c numOfMPeers -v 2
system sh/cfg.sh -n dnode1 -c walLevel -v 1
system sh/cfg.sh -n dnode2 -c walLevel -v 1
system sh/cfg.sh -n dnode3 -c walLevel -v 1
system sh/cfg.sh -n dnode1 -c balanceInterval -v 10
system sh/cfg.sh -n dnode2 -c balanceInterval -v 10
system sh/cfg.sh -n dnode3 -c balanceInterval -v 10
system sh/cfg.sh -n dnode1 -c arbitrator -v $arbitrator
system sh/cfg.sh -n dnode2 -c arbitrator -v $arbitrator
system sh/cfg.sh -n dnode3 -c arbitrator -v $arbitrator
print ============== step0: start tarbitrator
system sh/exec_tarbitrator.sh -s start
print ============== step1: replica is 1, and start 1 dnode
system sh/exec_up.sh -n dnode1 -s start
sleep 3000
sql connect
$db = replica_db1
sql create database $db replica 1 maxTables 4
sql use $db
# create table , insert data
$stb = repl_stb
sql create table $stb (ts timestamp, c1 int) tags(t1 int)
$rowNum = 10
$tblNum = 12
$ts0 = 1420041600000
$ts = $ts0
$delta = 1
$i = 0
while $i < $tblNum
$tb = tb . $i
sql create table $tb using $stb tags( $i )
$x = 0
while $x < $rowNum
$xs = $x * $delta
$ts = $ts0 + $xs
sql insert into $tb values ( $ts , $x )
$x = $x + 1
endw
$i = $i + 1
endw
print ============== step2: add 1 new dnode, expect balanced
system sh/exec_up.sh -n dnode2 -s start
sql create dnode $hostname2
# expect after balanced, 2 vondes in dnode1, 1 vonde in dnode2
$x = 0
show2:
$x = $x + 1
sleep 2000
if $x == 10 then
return -1
endi
sql show dnodes
print dnode1 openVnodes $data2_1
print dnode2 openVnodes $data2_2
if $data2_1 != 2 then
goto show2
endi
if $data2_2 != 1 then
goto show2
endi
#print ============== step3: start tarbitrator
#system sh/exec_tarbitrator.sh -s start
return 1
print ============== step4: stop dnode1, and wait dnode2 master
system sh/exec_up.sh -n dnode1 -s stop
$x = 0
loop_wait:
$x = $x + 1
sleep 2000
if $x == 10 then
print ERROR: after dnode1 stop, dnode2 didn't become a master!
return -1
endi
sql show mnodes
$dnodeRole = $data2_1
print dnodeRole ==> $dnodeRole
print dnodeEp ==> $data1_1
print hostname1 ==> $hostname1
print arbitrator ==> $arbitrator
if $dnodeRole != master then
goto loop_wait
endi
# alter replica to 2
#print ============== step3: alter replica to 2
#sql alter database $db replica 2
#$x = 0
#show2:
# $x = $x + 1
# sleep 2000
# if $x == 10 then
# return -1
# endi
#
#sql show mnodes
#print dnode1 ==> $data2_1
#print dnode2 ==> $data2_2
#if $data2_1 != master then
# goto show2
#endi
#if $data2_2 != slave then
# goto show2
#endi
#
#print ============== step3
#sql_error drop dnode $hostname1 -x error1
#print should not drop master
#
#print ============== step4
#system sh/exec_up.sh -n dnode1 -s stop -x SIGINT
#sql_error show mnodes
#print error of no master
#
#print ============== step5
#sql_error drop dnode $hostname1
#print error of no master
#
#print ============== step6
#system sh/exec_up.sh -n dnode1 -s start
#sleep 2000
#sql close
#sql connect
#
#$x = 0
#show6:
# $x = $x + 1
# sleep 2000
# if $x == 10 then
# return -1
# endi
#
#sql show mnodes -x show6
#print dnode1 ==> $data2_1
#print dnode2 ==> $data2_2
#if $data2_1 != master then
# goto show6
#endi
#if $data2_2 != slave then
# goto show6
#endi
#
#print ============== step7
#system sh/exec_up.sh -n dnode3 -s start
#sql create dnode $hostname3
#sleep 5000
#
#$x = 0
#show7:
# $x = $x + 1
# sleep 2000
# if $x == 10 then
# return -1
# endi
#
#sql show mnodes
#print dnode1 ==> $data2_1
#print dnode2 ==> $data2_2
#print dnode3 ==> $data2_3
#if $data2_1 != master then
# goto show7
#endi
#if $data2_2 != slave then
# goto show7
#endi
#if $data3_3 != null then
# goto show7
#endi
#
#system sh/exec_up.sh -n dnode1 -s stop -x SIGINT
#system sh/exec_up.sh -n dnode2 -s stop -x SIGINT
#system sh/exec_up.sh -n dnode3 -s stop -x SIGINT
#system sh/exec_up.sh -n dnode4 -s stop -x SIGINT
#system sh/exec_up.sh -n dnode5 -s stop -x SIGINT
#system sh/exec_up.sh -n dnode6 -s stop -x SIGINT
#system sh/exec_up.sh -n dnode7 -s stop -x SIGINT
#system sh/exec_up.sh -n dnode8 -s stop -x SIGINT
\ No newline at end of file
......@@ -36,12 +36,17 @@ void simLogSql(char *sql) {
fflush(fp);
}
char *simParseArbitratorName(char *varName);
char *simParseHostName(char *varName);
char *simGetVariable(SScript *script, char *varName, int varLen) {
if (strncmp(varName, "hostname", 8) == 0) {
return simParseHostName(varName);
}
if (strncmp(varName, "arbitrator", 10) == 0) {
return simParseArbitratorName(varName);
}
if (strncmp(varName, "error", varLen) == 0) return script->error;
if (strncmp(varName, "rows", varLen) == 0) return script->rows;
......
......@@ -29,6 +29,12 @@ int simDebugFlag = 135;
void simCloseTaosdConnect(SScript *script);
char simHostName[128];
char *simParseArbitratorName(char *varName) {
static char hostName[140];
sprintf(hostName, "%s:%d", simHostName, 8000);
return hostName;
}
char *simParseHostName(char *varName) {
static char hostName[140];
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册