提交 6c7c4dde 编写于 作者: H Haojun Liao

[td-225] merge develop

...@@ -1289,6 +1289,9 @@ int tscBuildUpdateTagMsg(SSqlObj* pSql, SSqlInfo *pInfo) { ...@@ -1289,6 +1289,9 @@ int tscBuildUpdateTagMsg(SSqlObj* pSql, SSqlInfo *pInfo) {
SUpdateTableTagValMsg* pUpdateMsg = (SUpdateTableTagValMsg*) (pCmd->payload + tsRpcHeadSize); SUpdateTableTagValMsg* pUpdateMsg = (SUpdateTableTagValMsg*) (pCmd->payload + tsRpcHeadSize);
pCmd->payloadLen = htonl(pUpdateMsg->head.contLen); pCmd->payloadLen = htonl(pUpdateMsg->head.contLen);
SQueryInfo * pQueryInfo = tscGetQueryInfoDetail(pCmd, 0);
STableMetaInfo *pTableMetaInfo = tscGetMetaInfo(pQueryInfo, 0);
tscSetDnodeIpList(pSql, &pTableMetaInfo->pTableMeta->vgroupInfo);
return TSDB_CODE_SUCCESS; return TSDB_CODE_SUCCESS;
} }
......
...@@ -475,6 +475,42 @@ int taos_select_db(TAOS *taos, const char *db) { ...@@ -475,6 +475,42 @@ int taos_select_db(TAOS *taos, const char *db) {
return code; return code;
} }
// send free message to vnode to free qhandle and corresponding resources in vnode
static bool tscFreeQhandleInVnode(SSqlObj* pSql) {
SSqlCmd* pCmd = &pSql->cmd;
SSqlRes* pRes = &pSql->res;
SQueryInfo* pQueryInfo = tscGetQueryInfoDetail(pCmd, 0);
STableMetaInfo *pTableMetaInfo = tscGetMetaInfo(pQueryInfo, 0);
if (pRes->code == TSDB_CODE_SUCCESS && pRes->completed == false && !tscIsTwoStageSTableQuery(pQueryInfo, 0) &&
(pCmd->command == TSDB_SQL_SELECT ||
pCmd->command == TSDB_SQL_SHOW ||
pCmd->command == TSDB_SQL_RETRIEVE ||
pCmd->command == TSDB_SQL_FETCH) &&
(pCmd->command == TSDB_SQL_SELECT && pSql->pStream == NULL && pTableMetaInfo->pTableMeta != NULL)) {
pCmd->command = (pCmd->command > TSDB_SQL_MGMT) ? TSDB_SQL_RETRIEVE : TSDB_SQL_FETCH;
tscTrace("%p start to send msg to free qhandle in dnode, command:%s", pSql, sqlCmd[pCmd->command]);
pSql->freed = 1;
tscProcessSql(pSql);
// in case of sync model query, waits for response and then goes on
if (pSql->fp == waitForQueryRsp || pSql->fp == waitForRetrieveRsp) {
sem_wait(&pSql->rspSem);
tscFreeSqlObj(pSql);
tscTrace("%p sqlObj is freed by app", pSql);
} else {
tscTrace("%p sqlObj will be freed while rsp received", pSql);
}
return true;
}
return false;
}
void taos_free_result(TAOS_RES *res) { void taos_free_result(TAOS_RES *res) {
SSqlObj *pSql = (SSqlObj *)res; SSqlObj *pSql = (SSqlObj *)res;
tscTrace("%p start to free result", res); tscTrace("%p start to free result", res);
...@@ -484,10 +520,8 @@ void taos_free_result(TAOS_RES *res) { ...@@ -484,10 +520,8 @@ void taos_free_result(TAOS_RES *res) {
return; return;
} }
SSqlRes *pRes = &pSql->res;
SSqlCmd *pCmd = &pSql->cmd;
// The semaphore can not be changed while freeing async sub query objects. // The semaphore can not be changed while freeing async sub query objects.
SSqlRes *pRes = &pSql->res;
if (pRes == NULL || pRes->qhandle == 0) { if (pRes == NULL || pRes->qhandle == 0) {
tscTrace("%p SqlObj is freed by app, qhandle is null", pSql); tscTrace("%p SqlObj is freed by app, qhandle is null", pSql);
tscFreeSqlObj(pSql); tscFreeSqlObj(pSql);
...@@ -502,38 +536,10 @@ void taos_free_result(TAOS_RES *res) { ...@@ -502,38 +536,10 @@ void taos_free_result(TAOS_RES *res) {
} }
pQueryInfo->type = TSDB_QUERY_TYPE_FREE_RESOURCE; pQueryInfo->type = TSDB_QUERY_TYPE_FREE_RESOURCE;
STableMetaInfo *pTableMetaInfo = tscGetMetaInfo(pQueryInfo, 0); if (!tscFreeQhandleInVnode(pSql)) {
/*
* If the query process is cancelled by user in stable query, tscProcessSql should not be called
* for each subquery. Because the failure of execution tsProcessSql may trigger the callback function
* be executed, and the retry efforts may result in double free the resources, e.g.,SRetrieveSupport
*/
if (pRes->code == TSDB_CODE_SUCCESS && pRes->completed == false &&
(pCmd->command == TSDB_SQL_SELECT || pCmd->command == TSDB_SQL_SHOW ||
pCmd->command == TSDB_SQL_RETRIEVE || pCmd->command == TSDB_SQL_FETCH) &&
(pCmd->command == TSDB_SQL_SELECT && pSql->pStream == NULL && pTableMetaInfo->pTableMeta != NULL)) {
pCmd->command = (pCmd->command > TSDB_SQL_MGMT) ? TSDB_SQL_RETRIEVE : TSDB_SQL_FETCH;
tscTrace("%p start to send msg to free qhandle in dnode, command:%s", pSql, sqlCmd[pCmd->command]);
pSql->freed = 1;
tscProcessSql(pSql);
// in case of sync model query, waits for response and then goes on
if (pSql->fp == waitForQueryRsp || pSql->fp == waitForRetrieveRsp) {
sem_wait(&pSql->rspSem);
tscFreeSqlObj(pSql); tscFreeSqlObj(pSql);
tscTrace("%p sqlObj is freed by app", pSql); tscTrace("%p sqlObj is freed by app", pSql);
} else {
tscTrace("%p sqlObj will be freed while rsp received", pSql);
}
return;
} }
tscFreeSqlObj(pSql);
tscTrace("%p sql result is freed by app", pSql);
} }
// todo should not be used in async query // todo should not be used in async query
......
...@@ -572,6 +572,7 @@ static void dnodeSaveMnodeInfos() { ...@@ -572,6 +572,7 @@ static void dnodeSaveMnodeInfos() {
len += snprintf(content + len, maxLen - len, "}\n"); len += snprintf(content + len, maxLen - len, "}\n");
fwrite(content, 1, len, fp); fwrite(content, 1, len, fp);
fflush(fp);
fclose(fp); fclose(fp);
free(content); free(content);
...@@ -694,6 +695,7 @@ static void dnodeSaveDnodeCfg() { ...@@ -694,6 +695,7 @@ static void dnodeSaveDnodeCfg() {
len += snprintf(content + len, maxLen - len, "}\n"); len += snprintf(content + len, maxLen - len, "}\n");
fwrite(content, 1, len, fp); fwrite(content, 1, len, fp);
fflush(fp);
fclose(fp); fclose(fp);
free(content); free(content);
......
...@@ -501,8 +501,7 @@ typedef struct { ...@@ -501,8 +501,7 @@ typedef struct {
} SVnodeLoad; } SVnodeLoad;
typedef struct { typedef struct {
char acct[TSDB_USER_LEN]; char db[TSDB_ACCT_LEN + TSDB_DB_NAME_LEN];
char db[TSDB_DB_NAME_LEN];
int32_t cacheBlockSize; //MB int32_t cacheBlockSize; //MB
int32_t totalBlocks; int32_t totalBlocks;
int32_t maxTables; int32_t maxTables;
......
...@@ -154,7 +154,7 @@ typedef struct { ...@@ -154,7 +154,7 @@ typedef struct {
} SDbCfg; } SDbCfg;
typedef struct SDbObj { typedef struct SDbObj {
char name[TSDB_DB_NAME_LEN]; char name[TSDB_ACCT_LEN + TSDB_DB_NAME_LEN];
char acct[TSDB_USER_LEN]; char acct[TSDB_USER_LEN];
int64_t createdTime; int64_t createdTime;
int32_t cfgVersion; int32_t cfgVersion;
......
...@@ -332,33 +332,42 @@ bool taosGetDisk() { ...@@ -332,33 +332,42 @@ bool taosGetDisk() {
} }
static bool taosGetCardInfo(int64_t *bytes) { static bool taosGetCardInfo(int64_t *bytes) {
*bytes = 0;
FILE *fp = fopen(tsSysNetFile, "r"); FILE *fp = fopen(tsSysNetFile, "r");
if (fp == NULL) { if (fp == NULL) {
uError("open file:%s failed", tsSysNetFile); uError("open file:%s failed", tsSysNetFile);
return false; return false;
} }
int64_t rbytes, rpackts, tbytes, tpackets;
int64_t nouse1, nouse2, nouse3, nouse4, nouse5, nouse6;
char nouse0[200] = {0};
size_t len; size_t len = 2048;
char * line = NULL; char * line = calloc(1, len);
*bytes = 0;
while (!feof(fp)) { while (!feof(fp)) {
tfree(line); memset(line, 0, len);
len = 0;
int64_t rbytes = 0;
int64_t rpackts = 0;
int64_t tbytes = 0;
int64_t tpackets = 0;
int64_t nouse1 = 0;
int64_t nouse2 = 0;
int64_t nouse3 = 0;
int64_t nouse4 = 0;
int64_t nouse5 = 0;
int64_t nouse6 = 0;
char nouse0[200] = {0};
getline(&line, &len, fp); getline(&line, &len, fp);
if (line == NULL) { line[len - 1] = 0;
break;
}
if (strstr(line, "lo:") != NULL) { if (strstr(line, "lo:") != NULL) {
continue; continue;
} }
sscanf(line, sscanf(line,
"%s %" PRId64 " %" PRId64 " %" PRId64 " %" PRId64 " %" PRId64 " %" PRId64 " %" PRId64 " %" PRId64 " %" PRId64 " %" PRId64, "%s %" PRId64 " %" PRId64 " %" PRId64 " %" PRId64 " %" PRId64 " %" PRId64 " %" PRId64 " %" PRId64 " %" PRId64
" %" PRId64,
nouse0, &rbytes, &rpackts, &nouse1, &nouse2, &nouse3, &nouse4, &nouse5, &nouse6, &tbytes, &tpackets); nouse0, &rbytes, &rpackts, &nouse1, &nouse2, &nouse3, &nouse4, &nouse5, &nouse6, &tbytes, &tpackets);
*bytes += (rbytes + tbytes); *bytes += (rbytes + tbytes);
} }
......
...@@ -424,6 +424,8 @@ void rpcSendResponse(const SRpcMsg *pRsp) { ...@@ -424,6 +424,8 @@ void rpcSendResponse(const SRpcMsg *pRsp) {
taosTmrReset(rpcProcessIdleTimer, pRpc->idleTime, pConn, pRpc->tmrCtrl, &pConn->pIdleTimer); taosTmrReset(rpcProcessIdleTimer, pRpc->idleTime, pConn, pRpc->tmrCtrl, &pConn->pIdleTimer);
rpcSendMsgToPeer(pConn, msg, msgLen); rpcSendMsgToPeer(pConn, msg, msgLen);
pConn->secured = 1; // connection shall be secured pConn->secured = 1; // connection shall be secured
if (pConn->pReqMsg) rpcFreeCont(pConn->pReqMsg);
pConn->pReqMsg = NULL; pConn->pReqMsg = NULL;
pConn->reqMsgLen = 0; pConn->reqMsgLen = 0;
......
...@@ -553,6 +553,7 @@ static int32_t vnodeSaveCfg(SMDCreateVnodeMsg *pVnodeCfg) { ...@@ -553,6 +553,7 @@ static int32_t vnodeSaveCfg(SMDCreateVnodeMsg *pVnodeCfg) {
len += snprintf(content + len, maxLen - len, "}\n"); len += snprintf(content + len, maxLen - len, "}\n");
fwrite(content, 1, len, fp); fwrite(content, 1, len, fp);
fflush(fp);
fclose(fp); fclose(fp);
free(content); free(content);
......
...@@ -127,6 +127,8 @@ class Test (Thread): ...@@ -127,6 +127,8 @@ class Test (Thread):
def drop_stable(self): def drop_stable(self):
tdLog.info("drop_stable") tdLog.info("drop_stable")
global last_stb global last_stb
global last_tb
global written
if (last_stb == ""): if (last_stb == ""):
tdLog.info("no super table") tdLog.info("no super table")
...@@ -135,6 +137,8 @@ class Test (Thread): ...@@ -135,6 +137,8 @@ class Test (Thread):
tdLog.info("will drop last super table") tdLog.info("will drop last super table")
tdSql.execute('drop table %s' % last_stb) tdSql.execute('drop table %s' % last_stb)
last_stb = "" last_stb = ""
last_tb = ""
written = 0
def restart_database(self): def restart_database(self):
tdLog.info("restart_database") tdLog.info("restart_database")
......
...@@ -105,12 +105,18 @@ class Test (threading.Thread): ...@@ -105,12 +105,18 @@ class Test (threading.Thread):
return return
else: else:
tdLog.info("will create stable %s" % current_stb) tdLog.info("will create stable %s" % current_stb)
tdLog.info(
'create table %s(ts timestamp, c1 int, c2 nchar(10)) tags (t1 int, t2 nchar(10))' %
current_stb)
tdSql.execute( tdSql.execute(
'create table %s(ts timestamp, c1 int, c2 nchar(10)) tags (t1 int, t2 nchar(10))' % 'create table %s(ts timestamp, c1 int, c2 nchar(10)) tags (t1 int, t2 nchar(10))' %
current_stb) current_stb)
last_stb = current_stb last_stb = current_stb
current_tb = "tb%d" % int(round(time.time() * 1000)) current_tb = "tb%d" % int(round(time.time() * 1000))
tdLog.info(
"create table %s using %s tags (1, '表1')" %
(current_tb, last_stb))
tdSql.execute( tdSql.execute(
"create table %s using %s tags (1, '表1')" % "create table %s using %s tags (1, '表1')" %
(current_tb, last_stb)) (current_tb, last_stb))
...@@ -128,6 +134,8 @@ class Test (threading.Thread): ...@@ -128,6 +134,8 @@ class Test (threading.Thread):
def drop_stable(self): def drop_stable(self):
tdLog.info("drop_stable") tdLog.info("drop_stable")
global last_stb global last_stb
global last_tb
global written
if (last_stb == ""): if (last_stb == ""):
tdLog.info("no super table") tdLog.info("no super table")
...@@ -136,6 +144,8 @@ class Test (threading.Thread): ...@@ -136,6 +144,8 @@ class Test (threading.Thread):
tdLog.info("will drop last super table") tdLog.info("will drop last super table")
tdSql.execute('drop table %s' % last_stb) tdSql.execute('drop table %s' % last_stb)
last_stb = "" last_stb = ""
last_tb = ""
written = 0
def restart_database(self): def restart_database(self):
tdLog.info("restart_database") tdLog.info("restart_database")
......
...@@ -111,6 +111,8 @@ class Test: ...@@ -111,6 +111,8 @@ class Test:
tdLog.info("will drop last super table") tdLog.info("will drop last super table")
tdSql.execute('drop table %s' % self.last_stb) tdSql.execute('drop table %s' % self.last_stb)
self.last_stb = "" self.last_stb = ""
self.last_tb = ""
self.written = 0
def query_data_from_stable(self): def query_data_from_stable(self):
tdLog.info("query_data_from_stable") tdLog.info("query_data_from_stable")
......
...@@ -55,7 +55,7 @@ sql create dnode $hostname3 ...@@ -55,7 +55,7 @@ sql create dnode $hostname3
sql create dnode $hostname4 sql create dnode $hostname4
sleep 3000 sleep 3000
$totalTableNum = 10000 $totalTableNum = 1000
$sleepTimer = 10000 $sleepTimer = 10000
$db = db $db = db
...@@ -133,5 +133,3 @@ if $data00 != $totalRows then ...@@ -133,5 +133,3 @@ if $data00 != $totalRows then
return -1 return -1
endi endi
print drop dnode $hostname3, return error: not drop dnode for repica is 2, need 2 dnodes.
sql_error drop dnode $hostname3
...@@ -59,7 +59,7 @@ $totalTableNum = 100 ...@@ -59,7 +59,7 @@ $totalTableNum = 100
$sleepTimer = 3000 $sleepTimer = 3000
$db = db $db = db
sql create database $db replica 3 maxTables $totalTableNum sql create database $db replica 2 maxTables $totalTableNum
sql use $db sql use $db
# create table , insert data # create table , insert data
...@@ -168,7 +168,7 @@ $dnode4Status = $data4_4 ...@@ -168,7 +168,7 @@ $dnode4Status = $data4_4
if $dnode3Status != ready then if $dnode3Status != ready then
sleep 2000 sleep 2000
goto wait_dnode4_reready goto wait_dnode3_reready
endi endi
sql select count(*) from $stb sql select count(*) from $stb
...@@ -213,8 +213,8 @@ print show vgroups: ...@@ -213,8 +213,8 @@ print show vgroups:
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1 $data5_1 $data6_1 $data7_1 $data8_1 $data9_1 print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1 $data5_1 $data6_1 $data7_1 $data8_1 $data9_1
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2 $data5_2 $data6_2 $data7_2 $data8_2 $data9_2 print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2 $data5_2 $data6_2 $data7_2 $data8_2 $data9_2
print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3 $data5_3 $data6_3 $data7_3 $data8_3 $data9_3 print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3 $data5_3 $data6_3 $data7_3 $data8_3 $data9_3
$dnode2Vtatus = $data4_2 $dnode2Vtatus = $data7_2
$dnode3Vtatus = $data7_2 $dnode3Vtatus = $data4_2
if $dnode2Vtatus != offline then if $dnode2Vtatus != offline then
sleep 2000 sleep 2000
......
...@@ -59,7 +59,7 @@ $totalTableNum = 100 ...@@ -59,7 +59,7 @@ $totalTableNum = 100
$sleepTimer = 3000 $sleepTimer = 3000
$db = db $db = db
sql create database $db replica 3 maxTables $totalTableNum sql create database $db replica 2 maxTables $totalTableNum
sql use $db sql use $db
# create table , insert data # create table , insert data
...@@ -141,8 +141,8 @@ print show vgroups: ...@@ -141,8 +141,8 @@ print show vgroups:
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1 $data5_1 $data6_1 $data7_1 $data8_1 $data9_1 print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1 $data5_1 $data6_1 $data7_1 $data8_1 $data9_1
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2 $data5_2 $data6_2 $data7_2 $data8_2 $data9_2 print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2 $data5_2 $data6_2 $data7_2 $data8_2 $data9_2
print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3 $data5_3 $data6_3 $data7_3 $data8_3 $data9_3 print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3 $data5_3 $data6_3 $data7_3 $data8_3 $data9_3
$dnode2Vtatus = $data4_2 $dnode2Vtatus = $data7_2
$dnode3Vtatus = $data7_2 $dnode3Vtatus = $data4_2
if $dnode2Vtatus != offline then if $dnode2Vtatus != offline then
sleep 2000 sleep 2000
......
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/deploy.sh -n dnode4 -i 4
system sh/cfg.sh -n dnode1 -c numOfMnodes -v 2
system sh/cfg.sh -n dnode2 -c numOfMnodes -v 2
system sh/cfg.sh -n dnode3 -c numOfMnodes -v 2
system sh/cfg.sh -n dnode1 -c walLevel -v 2
system sh/cfg.sh -n dnode2 -c walLevel -v 2
system sh/cfg.sh -n dnode3 -c walLevel -v 2
system sh/cfg.sh -n dnode4 -c walLevel -v 2
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 dnode4 -c balanceInterval -v 10
system sh/cfg.sh -n dnode1 -c numOfTotalVnodes -v 4
system sh/cfg.sh -n dnode2 -c numOfTotalVnodes -v 4
system sh/cfg.sh -n dnode3 -c numOfTotalVnodes -v 4
system sh/cfg.sh -n dnode4 -c numOfTotalVnodes -v 4
#system sh/cfg.sh -n dnode1 -c alternativeRole -v 2
#system sh/cfg.sh -n dnode2 -c alternativeRole -v 2
#system sh/cfg.sh -n dnode3 -c alternativeRole -v 2
#system sh/cfg.sh -n dnode4 -c alternativeRole -v 2
system sh/cfg.sh -n dnode1 -c maxtablesPerVnode -v 4
system sh/cfg.sh -n dnode2 -c maxtablesPerVnode -v 4
system sh/cfg.sh -n dnode3 -c maxtablesPerVnode -v 4
system sh/cfg.sh -n dnode4 -c maxtablesPerVnode -v 4
system sh/cfg.sh -n dnode5 -c maxtablesPerVnode -v 4
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: start dnode1, only deploy mnode
system sh/exec.sh -n dnode1 -s start
sleep 3000
sql connect
print ============== step2: start dnode2/dnode3 and add into cluster , then create database with replica 3, and create table to max tables
system sh/exec.sh -n dnode2 -s start
system sh/exec.sh -n dnode3 -s start
#system sh/exec.sh -n dnode4 -s start
sql create dnode $hostname2
sleep 3000
sql create dnode $hostname3
#sql create dnode $hostname4
sleep 3000
$totalTableNum = 4
$sleepTimer = 3000
$db = db
sql create database $db replica 3
sql use $db
# create table , insert data
$stb = stb
sql create table $stb (ts timestamp, c1 int) tags(t1 int)
$rowNum = 10
$tblNum = $totalTableNum
$totalRows = 0
$tsStart = 1420041600000
$i = 0
while $i < $tblNum
$tb = tb . $i
sql create table $tb using $stb tags( $i )
$x = 0
while $x < $rowNum
$ts = $tsStart + $x
sql insert into $tb values ( $ts + 0a , $x ) ( $ts + 1a , $x ) ( $ts + 2a , $x ) ( $ts + 3a , $x ) ( $ts + 4a , $x ) ( $ts + 5a , $x ) ( $ts + 6a , $x ) ( $ts + 7a , $x ) ( $ts + 8a , $x ) ( $ts + 9a , $x )
$x = $x + 10
endw
$totalRows = $totalRows + $x
print info: inserted $x rows into $tb and totalRows: $totalRows
$i = $i + 1
endw
sql select count(*) from $stb
print data00:$data00 totalRows:$totalRows
if $data00 != $totalRows then
return -1
endi
print ============== step3: stop dnode2
system sh/exec.sh -n dnode2 -s stop
sleep 3000
sql show mnodes
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2
print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3
#print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4
$mnode1Status = $data2_1
$mnode2Status = $data2_2
$mnode3Status = $data2_3
#$mnode4Status = $data2_4
if $mnode1Status != master then
return -1
endi
if $mnode2Status != offline then
return -1
endi
sql reset query cache
sql select count(*) from $stb
print data00:$data00 totalRows:$totalRows
if $data00 != $totalRows then
return -1
endi
...@@ -47,7 +47,7 @@ system sh/exec.sh -n dnode1 -s start ...@@ -47,7 +47,7 @@ system sh/exec.sh -n dnode1 -s start
sleep 3000 sleep 3000
sql connect sql connect
print ============== step2: start dnode2/dnode3/dnode4 and add into cluster , then create database with replica 3, and create table, insert data print ============== step2: start dnode2/dnode3/dnode4 and add into cluster , then create database with replica 2, and create table, insert data
system sh/exec.sh -n dnode2 -s start system sh/exec.sh -n dnode2 -s start
#system sh/exec.sh -n dnode3 -s start #system sh/exec.sh -n dnode3 -s start
system sh/exec.sh -n dnode4 -s start system sh/exec.sh -n dnode4 -s start
...@@ -60,13 +60,13 @@ $totalTableNum = 100 ...@@ -60,13 +60,13 @@ $totalTableNum = 100
$sleepTimer = 3000 $sleepTimer = 3000
$db = db $db = db
print create database $db replica 3 maxTables $totalTableNum print create database $db replica 2 maxTables $totalTableNum
sql create database $db replica 3 maxTables $totalTableNum sql create database $db replica 2 maxTables $totalTableNum
sql use $db sql use $db
# create table , insert data # create table , insert data
$stb = stb $stb = stb
sql create table $stb (ts timestamp, c1 int) tags(t1 int) sql create table $stb (ts timestamp, c1 int, c2 int) tags(t1 int)
$rowNum = 500 $rowNum = 500
$tblNum = $totalTableNum $tblNum = $totalTableNum
$totalRows = 0 $totalRows = 0
...@@ -81,8 +81,8 @@ while $i < $tblNum ...@@ -81,8 +81,8 @@ while $i < $tblNum
$x = 0 $x = 0
while $x < $rowNum while $x < $rowNum
$ts = $tsStart + $x $ts = $tsStart + $x
sql insert into $tb values ( $ts + 0a , $x ) ( $ts + 1a , $x ) ( $ts + 2a , $x ) ( $ts + 3a , $x ) ( $ts + 4a , $x ) ( $ts + 5a , $x ) ( $ts + 6a , $x ) ( $ts + 7a , $x ) ( $ts + 8a , $x ) ( $ts + 9a , $x ) ( $ts + 10a , $x ) ( $ts + 11a , $x ) ( $ts + 12a , $x ) ( $ts + 13a , $x ) ( $ts + 14a , $x ) ( $ts + 15a , $x ) ( $ts + 16a , $x ) ( $ts + 17a , $x ) ( $ts + 18a , $x ) ( $ts + 19a , $x ) ( $ts + 20a , $x ) ( $ts + 21a , $x ) ( $ts + 22a , $x ) ( $ts + 23a , $x ) ( $ts + 24a , $x ) ( $ts + 25a , $x ) ( $ts + 26a , $x ) ( $ts + 27a , $x ) ( $ts + 28a , $x ) ( $ts + 29a , $x ) ( $ts + 30a , $x ) ( $ts + 31a , $x ) ( $ts + 32a , $x ) ( $ts + 33a , $x ) ( $ts + 34a , $x ) ( $ts + 25a , $x ) ( $ts + 26a , $x ) ( $ts + 27a , $x ) ( $ts + 28a , $x ) ( $ts + 29a , $x ) ( $ts + 30a , $x ) ( $ts + 31a , $x ) ( $ts + 32a , $x ) ( $ts + 33a , $x ) ( $ts + 34a , $x ) ( $ts + 35a , $x ) ( $ts + 36a , $x ) ( $ts + 37a , $x ) ( $ts + 38a , $x ) ( $ts + 39a , $x ) ( $ts + 40a , $x ) ( $ts + 41a , $x ) ( $ts + 42a , $x ) ( $ts + 43a , $x ) ( $ts + 44a , $x ) ( $ts + 45a , $x ) ( $ts + 46a , $x ) ( $ts + 47a , $x ) ( $ts + 48a , $x ) ( $ts + 49a , $x ) ( $ts + 50a , $x ) ( $ts + 51a , $x ) ( $ts + 52a , $x ) ( $ts + 53a , $x ) ( $ts + 54a , $x ) ( $ts + 55a , $x ) ( $ts + 56a , $x ) ( $ts + 57a , $x ) ( $ts + 58a , $x ) ( $ts + 59a , $x ) sql insert into $tb values ( $ts + 0a , $x , $x ) ( $ts + 1a , $x , $x ) ( $ts + 2a , $x , $x ) ( $ts + 3a , $x , $x ) ( $ts + 4a , $x , $x ) ( $ts + 5a , $x , $x ) ( $ts + 6a , $x , $x ) ( $ts + 7a , $x , $x ) ( $ts + 8a , $x , $x ) ( $ts + 9a , $x , $x ) ( $ts + 10a , $x , $x ) ( $ts + 11a , $x , $x ) ( $ts + 12a , $x , $x ) ( $ts + 13a , $x , $x ) ( $ts + 14a , $x , $x ) ( $ts + 15a , $x , $x ) ( $ts + 16a , $x , $x ) ( $ts + 17a , $x , $x ) ( $ts + 18a , $x , $x ) ( $ts + 19a , $x , $x )
$x = $x + 60 $x = $x + 20
endw endw
$totalRows = $totalRows + $x $totalRows = $totalRows + $x
print info: inserted $x rows into $tb and totalRows: $totalRows print info: inserted $x rows into $tb and totalRows: $totalRows
...@@ -113,8 +113,8 @@ print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3 ...@@ -113,8 +113,8 @@ print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6 #print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
#$dnode1Status = $data4_1 #$dnode1Status = $data4_1
$dnode2Status = $data4_2 $dnode2Status = $data4_2
$dnode3Status = $data4_3 #$dnode3Status = $data4_3
$dnode4Status = $data4_4 $dnode4Status = $data4_3
#$dnode5Status = $data4_5 #$dnode5Status = $data4_5
if $dnode4Status != offline then if $dnode4Status != offline then
...@@ -151,7 +151,7 @@ sql alter table $stb add column f1 double ...@@ -151,7 +151,7 @@ sql alter table $stb add column f1 double
$i = 0 $i = 0
while $i < $tblNum while $i < $tblNum
$tb = tb . $i $tb = tb . $i
sql inset into $tb values (now, 10001) (now + 1s, 10002) (now + 2s, 10003) (now + 3s, 10004) sql insert into $tb values (now, 10001, 1.0001) (now + 1s, 10002, 1.0002) (now + 2s, 10003, 1.0003) (now + 3s, 10004, 1.0004)
$i = $i + 1 $i = $i + 1
endw endw
$addRows = 4 * $tblNum $addRows = 4 * $tblNum
...@@ -174,8 +174,8 @@ print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4 ...@@ -174,8 +174,8 @@ print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6 #print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
#$dnode1Status = $data4_1 #$dnode1Status = $data4_1
#$dnode2Status = $data4_2 #$dnode2Status = $data4_2
$dnode3Status = $data4_3 #$dnode3Status = $data4_3
$dnode4Status = $data4_4 $dnode4Status = $data4_3
#$dnode5Status = $data4_5 #$dnode5Status = $data4_5
if $dnode4Status != ready then if $dnode4Status != ready then
......
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/deploy.sh -n dnode4 -i 4
system sh/cfg.sh -n dnode1 -c numOfMnodes -v 1
system sh/cfg.sh -n dnode2 -c numOfMnodes -v 1
system sh/cfg.sh -n dnode3 -c numOfMnodes -v 1
system sh/cfg.sh -n dnode4 -c numOfMnodes -v 1
system sh/cfg.sh -n dnode1 -c walLevel -v 2
system sh/cfg.sh -n dnode2 -c walLevel -v 2
system sh/cfg.sh -n dnode3 -c walLevel -v 2
system sh/cfg.sh -n dnode4 -c walLevel -v 2
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 dnode4 -c balanceInterval -v 10
system sh/cfg.sh -n dnode1 -c numOfTotalVnodes -v 4
system sh/cfg.sh -n dnode2 -c numOfTotalVnodes -v 4
system sh/cfg.sh -n dnode3 -c numOfTotalVnodes -v 4
system sh/cfg.sh -n dnode4 -c numOfTotalVnodes -v 4
#system sh/cfg.sh -n dnode1 -c alternativeRole -v 1
#system sh/cfg.sh -n dnode2 -c alternativeRole -v 2
#system sh/cfg.sh -n dnode3 -c alternativeRole -v 2
#system sh/cfg.sh -n dnode4 -c alternativeRole -v 2
system sh/cfg.sh -n dnode1 -c maxtablesPerVnode -v 4
system sh/cfg.sh -n dnode2 -c maxtablesPerVnode -v 4
system sh/cfg.sh -n dnode3 -c maxtablesPerVnode -v 4
system sh/cfg.sh -n dnode4 -c maxtablesPerVnode -v 4
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
system sh/cfg.sh -n dnode4 -c arbitrator -v $arbitrator
print ============== step0: start tarbitrator
system sh/exec_tarbitrator.sh -s start
print ============== step1: start dnode1, only deploy mnode
system sh/exec.sh -n dnode1 -s start
sleep 3000
sql connect
print ============== step2: start dnode2/dnode3/dnode4 and add into cluster , then create database with replica 2, and create table, insert data
system sh/exec.sh -n dnode2 -s start
#system sh/exec.sh -n dnode3 -s start
system sh/exec.sh -n dnode4 -s start
sql create dnode $hostname2
#sql create dnode $hostname3
sql create dnode $hostname4
sleep 3000
$totalTableNum = 10
$sleepTimer = 3000
$maxTables = $totalTableNum * 2
$db = db
print create database $db replica 2 maxTables $maxTables
sql create database $db replica 2 maxTables $maxTables
sql use $db
# create table , insert data
$stb = stb
sql create table $stb (ts timestamp, c1 int, c2 int) tags(t1 int)
$rowNum = 500
$tblNum = $totalTableNum
$totalRows = 0
$tsStart = 1420041600000
$tsEnd = 0
$i = 0
while $i < $tblNum
$tb = tb . $i
sql create table $tb using $stb tags( $i )
$x = 0
while $x < $rowNum
$ts = $tsStart + $x
sql insert into $tb values ( $ts + 0a , $x , $x ) ( $ts + 1a , $x , $x ) ( $ts + 2a , $x , $x ) ( $ts + 3a , $x , $x ) ( $ts + 4a , $x , $x ) ( $ts + 5a , $x , $x ) ( $ts + 6a , $x , $x ) ( $ts + 7a , $x , $x ) ( $ts + 8a , $x , $x ) ( $ts + 9a , $x , $x ) ( $ts + 10a , $x , $x ) ( $ts + 11a , $x , $x ) ( $ts + 12a , $x , $x ) ( $ts + 13a , $x , $x ) ( $ts + 14a , $x , $x ) ( $ts + 15a , $x , $x ) ( $ts + 16a , $x , $x ) ( $ts + 17a , $x , $x ) ( $ts + 18a , $x , $x ) ( $ts + 19a , $x , $x )
$x = $x + 20
endw
$totalRows = $totalRows + $x
print info: inserted $x rows into $tb and totalRows: $totalRows
$i = $i + 1
endw
$tsEnd = $tsStart + $totalRows / $tblNum
sql select count(*) from $stb
print data00 $data00
if $data00 != $totalRows then
return -1
endi
print ============== step3: stop dnode4
system sh/exec.sh -n dnode4 -s stop -x SIGINT
sleep $sleepTimer
wait_dnode4_offline_0:
sql show dnodes
if $rows != 3 then
sleep 2000
goto wait_dnode4_offline_0
endi
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2
print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3
#print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4
#print $data0_5 $data1_5 $data2_5 $data3_5 $data4_5
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
#$dnode1Status = $data4_1
$dnode2Status = $data4_2
#$dnode3Status = $data4_3
$dnode4Status = $data4_3
#$dnode5Status = $data4_5
if $dnode4Status != offline then
sleep 2000
goto wait_dnode4_offline_0
endi
wait_dnode4_vgroup_offline:
sql show vgroups
if $rows != 1 then
sleep 2000
goto wait_dnode4_vgroup_offline
endi
print show vgroups:
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1 $data5_1 $data6_1 $data7_1 $data8_1 $data9_1
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2 $data5_2 $data6_2 $data7_2 $data8_2 $data9_2
print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3 $data5_3 $data6_3 $data7_3 $data8_3 $data9_3
$dnode4Vtatus = $data4_2
$dnode3Vtatus = $data7_2
if $dnode4Vtatus != offline then
sleep 2000
goto wait_dnode4_vgroup_offline
endi
if $dnode3Vtatus != master then
sleep 2000
goto wait_dnode4_vgroup_offline
endi
print ============== step4: alter table and tag, then drop all sub tables, recreate som subtable and insert more data rows
sql alter table $stb drop column c1
sql alter table $stb add column f1 double
sql alter table $stb add tag t2 int
sql alter table $stb add tag t3 int
sql alter table $stb drop tag t1
$i = 0
while $i < $tblNum
$tb = tb . $i
sql drop table $tb
$i = $i + 1
endw
$totalRows = 0
$i = 0
while $i < $tblNum
$tb = tb . $i
sql create table $tb using $stb tags( $i , $i )
$x = 0
while $x < $rowNum
$ts = $tsStart + $x
sql insert into $tb values ( $ts + 0a , $x , $x ) ( $ts + 1a , $x , $x ) ( $ts + 2a , $x , $x ) ( $ts + 3a , $x , $x ) ( $ts + 4a , $x , $x ) ( $ts + 5a , $x , $x ) ( $ts + 6a , $x , $x ) ( $ts + 7a , $x , $x ) ( $ts + 8a , $x , $x ) ( $ts + 9a , $x , $x ) ( $ts + 10a , $x , $x ) ( $ts + 11a , $x , $x ) ( $ts + 12a , $x , $x ) ( $ts + 13a , $x , $x ) ( $ts + 14a , $x , $x ) ( $ts + 15a , $x , $x ) ( $ts + 16a , $x , $x ) ( $ts + 17a , $x , $x ) ( $ts + 18a , $x , $x ) ( $ts + 19a , $x , $x )
$x = $x + 20
endw
$totalRows = $totalRows + $x
print info: inserted $x rows into $tb and totalRows: $totalRows
$i = $i + 1
endw
$tsEnd = $tsStart + $totalRows / $tblNum
sql select count(*) from $stb
print data00 $data00
if $data00 != $totalRows then
return -1
endi
print ============== step5: restart dnode4, waiting dnode4 synced
system sh/exec.sh -n dnode4 -s start
wait_dnode4_ready:
sql show dnodes
if $rows != 3 then
sleep 2000
goto wait_dnode4_ready
endi
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2
print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3
print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4
#print $data0_5 $data1_5 $data2_5 $data3_5 $data4_5
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
#$dnode1Status = $data4_1
#$dnode2Status = $data4_2
#$dnode3Status = $data4_3
$dnode4Status = $data4_3
#$dnode5Status = $data4_5
if $dnode4Status != ready then
sleep 2000
goto wait_dnode4_ready
endi
print ============== step6: check result
sql reset query cache
$cnt = 0
wait_table_dropped:
$cnt = $cnt + 1
if $cnt == 20 then
return -1
endi
sql select count(*) from $stb
if $data00 != $totalRows then
print data00: $data00 totalRows: $totalRows
sleep 2000
goto wait_table_dropped
endi
...@@ -47,7 +47,7 @@ system sh/exec.sh -n dnode1 -s start ...@@ -47,7 +47,7 @@ system sh/exec.sh -n dnode1 -s start
sleep 3000 sleep 3000
sql connect sql connect
print ============== step2: start dnode2/dnode3/dnode4 and add into cluster , then create database with replica 3, and create table, insert data print ============== step2: start dnode2/dnode3/dnode4 and add into cluster , then create database with replica 2, and create table, insert data
system sh/exec.sh -n dnode2 -s start system sh/exec.sh -n dnode2 -s start
#system sh/exec.sh -n dnode3 -s start #system sh/exec.sh -n dnode3 -s start
system sh/exec.sh -n dnode4 -s start system sh/exec.sh -n dnode4 -s start
...@@ -59,9 +59,11 @@ sleep 3000 ...@@ -59,9 +59,11 @@ sleep 3000
$totalTableNum = 100 $totalTableNum = 100
$sleepTimer = 3000 $sleepTimer = 3000
$maxTables = $totalTableNum * 2
$db = db $db = db
print create database $db replica 3 maxTables $totalTableNum print create database $db replica 2 maxTables $maxTables
sql create database $db replica 3 maxTables $totalTableNum sql create database $db replica 2 maxTables $maxTables
sql use $db sql use $db
# create table , insert data # create table , insert data
...@@ -113,8 +115,8 @@ print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3 ...@@ -113,8 +115,8 @@ print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6 #print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
#$dnode1Status = $data4_1 #$dnode1Status = $data4_1
$dnode2Status = $data4_2 $dnode2Status = $data4_2
$dnode3Status = $data4_3 #$dnode3Status = $data4_3
$dnode4Status = $data4_4 $dnode4Status = $data4_3
#$dnode5Status = $data4_5 #$dnode5Status = $data4_5
if $dnode4Status != offline then if $dnode4Status != offline then
...@@ -186,8 +188,8 @@ print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4 ...@@ -186,8 +188,8 @@ print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6 #print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
#$dnode1Status = $data4_1 #$dnode1Status = $data4_1
#$dnode2Status = $data4_2 #$dnode2Status = $data4_2
$dnode3Status = $data4_3 #$dnode3Status = $data4_3
$dnode4Status = $data4_4 $dnode4Status = $data4_3
#$dnode5Status = $data4_5 #$dnode5Status = $data4_5
if $dnode4Status != ready then if $dnode4Status != ready then
......
...@@ -113,8 +113,8 @@ print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3 ...@@ -113,8 +113,8 @@ print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6 #print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
#$dnode1Status = $data4_1 #$dnode1Status = $data4_1
$dnode2Status = $data4_2 $dnode2Status = $data4_2
$dnode3Status = $data4_3 #$dnode3Status = $data4_3
$dnode4Status = $data4_4 $dnode4Status = $data4_3
#$dnode5Status = $data4_5 #$dnode5Status = $data4_5
if $dnode4Status != offline then if $dnode4Status != offline then
......
...@@ -47,7 +47,7 @@ system sh/exec.sh -n dnode1 -s start ...@@ -47,7 +47,7 @@ system sh/exec.sh -n dnode1 -s start
sleep 3000 sleep 3000
sql connect sql connect
print ============== step2: start dnode2/dnode3/dnode4 and add into cluster , then create database with replica 3, and create table, insert data print ============== step2: start dnode2/dnode3/dnode4 and add into cluster , then create database with replica 2, and create table, insert data
system sh/exec.sh -n dnode2 -s start system sh/exec.sh -n dnode2 -s start
#system sh/exec.sh -n dnode3 -s start #system sh/exec.sh -n dnode3 -s start
system sh/exec.sh -n dnode4 -s start system sh/exec.sh -n dnode4 -s start
...@@ -60,8 +60,8 @@ $totalTableNum = 100 ...@@ -60,8 +60,8 @@ $totalTableNum = 100
$sleepTimer = 3000 $sleepTimer = 3000
$db = db $db = db
print create database $db replica 3 maxTables $totalTableNum print create database $db replica 2 maxTables $totalTableNum
sql create database $db replica 3 maxTables $totalTableNum sql create database $db replica 2 maxTables $totalTableNum
sql use $db sql use $db
# create table , insert data # create table , insert data
...@@ -113,8 +113,8 @@ print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3 ...@@ -113,8 +113,8 @@ print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6 #print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
#$dnode1Status = $data4_1 #$dnode1Status = $data4_1
$dnode2Status = $data4_2 $dnode2Status = $data4_2
$dnode3Status = $data4_3 #$dnode3Status = $data4_3
$dnode4Status = $data4_4 $dnode4Status = $data4_3
#$dnode5Status = $data4_5 #$dnode5Status = $data4_5
if $dnode4Status != offline then if $dnode4Status != offline then
...@@ -172,8 +172,8 @@ print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4 ...@@ -172,8 +172,8 @@ print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6 #print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
#$dnode1Status = $data4_1 #$dnode1Status = $data4_1
#$dnode2Status = $data4_2 #$dnode2Status = $data4_2
$dnode3Status = $data4_3 #$dnode3Status = $data4_3
$dnode4Status = $data4_4 $dnode4Status = $data4_3
#$dnode5Status = $data4_5 #$dnode5Status = $data4_5
if $dnode4Status != ready then if $dnode4Status != ready then
......
...@@ -66,7 +66,7 @@ sql use $db ...@@ -66,7 +66,7 @@ sql use $db
# create table , insert data # create table , insert data
$stb = stb $stb = stb
sql create table $stb (ts timestamp, c1 int) tags(t1 int) sql create table $stb (ts timestamp, c1 int, c2 int) tags(t1 int)
$rowNum = 500 $rowNum = 500
$tblNum = $totalTableNum $tblNum = $totalTableNum
$totalRows = 0 $totalRows = 0
...@@ -81,8 +81,8 @@ while $i < $tblNum ...@@ -81,8 +81,8 @@ while $i < $tblNum
$x = 0 $x = 0
while $x < $rowNum while $x < $rowNum
$ts = $tsStart + $x $ts = $tsStart + $x
sql insert into $tb values ( $ts + 0a , $x ) ( $ts + 1a , $x ) ( $ts + 2a , $x ) ( $ts + 3a , $x ) ( $ts + 4a , $x ) ( $ts + 5a , $x ) ( $ts + 6a , $x ) ( $ts + 7a , $x ) ( $ts + 8a , $x ) ( $ts + 9a , $x ) ( $ts + 10a , $x ) ( $ts + 11a , $x ) ( $ts + 12a , $x ) ( $ts + 13a , $x ) ( $ts + 14a , $x ) ( $ts + 15a , $x ) ( $ts + 16a , $x ) ( $ts + 17a , $x ) ( $ts + 18a , $x ) ( $ts + 19a , $x ) ( $ts + 20a , $x ) ( $ts + 21a , $x ) ( $ts + 22a , $x ) ( $ts + 23a , $x ) ( $ts + 24a , $x ) ( $ts + 25a , $x ) ( $ts + 26a , $x ) ( $ts + 27a , $x ) ( $ts + 28a , $x ) ( $ts + 29a , $x ) ( $ts + 30a , $x ) ( $ts + 31a , $x ) ( $ts + 32a , $x ) ( $ts + 33a , $x ) ( $ts + 34a , $x ) ( $ts + 25a , $x ) ( $ts + 26a , $x ) ( $ts + 27a , $x ) ( $ts + 28a , $x ) ( $ts + 29a , $x ) ( $ts + 30a , $x ) ( $ts + 31a , $x ) ( $ts + 32a , $x ) ( $ts + 33a , $x ) ( $ts + 34a , $x ) ( $ts + 35a , $x ) ( $ts + 36a , $x ) ( $ts + 37a , $x ) ( $ts + 38a , $x ) ( $ts + 39a , $x ) ( $ts + 40a , $x ) ( $ts + 41a , $x ) ( $ts + 42a , $x ) ( $ts + 43a , $x ) ( $ts + 44a , $x ) ( $ts + 45a , $x ) ( $ts + 46a , $x ) ( $ts + 47a , $x ) ( $ts + 48a , $x ) ( $ts + 49a , $x ) ( $ts + 50a , $x ) ( $ts + 51a , $x ) ( $ts + 52a , $x ) ( $ts + 53a , $x ) ( $ts + 54a , $x ) ( $ts + 55a , $x ) ( $ts + 56a , $x ) ( $ts + 57a , $x ) ( $ts + 58a , $x ) ( $ts + 59a , $x ) sql insert into $tb values ( $ts + 0a , $x , $x ) ( $ts + 1a , $x , $x ) ( $ts + 2a , $x , $x ) ( $ts + 3a , $x , $x ) ( $ts + 4a , $x , $x ) ( $ts + 5a , $x , $x ) ( $ts + 6a , $x , $x ) ( $ts + 7a , $x , $x ) ( $ts + 8a , $x , $x ) ( $ts + 9a , $x , $x ) ( $ts + 10a , $x , $x ) ( $ts + 11a , $x , $x ) ( $ts + 12a , $x , $x ) ( $ts + 13a , $x , $x ) ( $ts + 14a , $x , $x ) ( $ts + 15a , $x , $x ) ( $ts + 16a , $x , $x ) ( $ts + 17a , $x , $x ) ( $ts + 18a , $x , $x ) ( $ts + 19a , $x , $x )
$x = $x + 60 $x = $x + 20
endw endw
$totalRows = $totalRows + $x $totalRows = $totalRows + $x
print info: inserted $x rows into $tb and totalRows: $totalRows print info: inserted $x rows into $tb and totalRows: $totalRows
...@@ -151,7 +151,7 @@ sql alter table $stb add column f1 double ...@@ -151,7 +151,7 @@ sql alter table $stb add column f1 double
$i = 0 $i = 0
while $i < $tblNum while $i < $tblNum
$tb = tb . $i $tb = tb . $i
sql inset into $tb values (now, 10001) (now + 1s, 10002) (now + 2s, 10003) (now + 3s, 10004) sql insert into $tb values (now, 10001, 1.0001) (now + 1s, 10002, 1.0002) (now + 2s, 10003, 1.0003) (now + 3s, 10004, 1.0004)
$i = $i + 1 $i = $i + 1
endw endw
$addRows = 4 * $tblNum $addRows = 4 * $tblNum
......
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/deploy.sh -n dnode4 -i 4
system sh/cfg.sh -n dnode1 -c numOfMnodes -v 1
system sh/cfg.sh -n dnode2 -c numOfMnodes -v 1
system sh/cfg.sh -n dnode3 -c numOfMnodes -v 1
system sh/cfg.sh -n dnode4 -c numOfMnodes -v 1
system sh/cfg.sh -n dnode1 -c walLevel -v 2
system sh/cfg.sh -n dnode2 -c walLevel -v 2
system sh/cfg.sh -n dnode3 -c walLevel -v 2
system sh/cfg.sh -n dnode4 -c walLevel -v 2
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 dnode4 -c balanceInterval -v 10
system sh/cfg.sh -n dnode1 -c numOfTotalVnodes -v 4
system sh/cfg.sh -n dnode2 -c numOfTotalVnodes -v 4
system sh/cfg.sh -n dnode3 -c numOfTotalVnodes -v 4
system sh/cfg.sh -n dnode4 -c numOfTotalVnodes -v 4
#system sh/cfg.sh -n dnode1 -c alternativeRole -v 1
#system sh/cfg.sh -n dnode2 -c alternativeRole -v 2
#system sh/cfg.sh -n dnode3 -c alternativeRole -v 2
#system sh/cfg.sh -n dnode4 -c alternativeRole -v 2
system sh/cfg.sh -n dnode1 -c maxtablesPerVnode -v 4
system sh/cfg.sh -n dnode2 -c maxtablesPerVnode -v 4
system sh/cfg.sh -n dnode3 -c maxtablesPerVnode -v 4
system sh/cfg.sh -n dnode4 -c maxtablesPerVnode -v 4
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
system sh/cfg.sh -n dnode4 -c arbitrator -v $arbitrator
print ============== step0: start tarbitrator
system sh/exec_tarbitrator.sh -s start
print ============== step1: start dnode1, only deploy mnode
system sh/exec.sh -n dnode1 -s start
sleep 3000
sql connect
print ============== step2: start dnode2/dnode3/dnode4 and add into cluster , then create database with replica 3, and create table, insert data
system sh/exec.sh -n dnode2 -s start
system sh/exec.sh -n dnode3 -s start
system sh/exec.sh -n dnode4 -s start
sql create dnode $hostname2
sql create dnode $hostname3
sql create dnode $hostname4
sleep 3000
$totalTableNum = 10
$sleepTimer = 3000
$maxTables = $totalTableNum * 2
$db = db
print create database $db replica 3 maxTables $maxTables
sql create database $db replica 3 maxTables $maxTables
sql use $db
# create table , insert data
$stb = stb
sql create table $stb (ts timestamp, c1 int, c2 int) tags(t1 int)
$rowNum = 500
$tblNum = $totalTableNum
$totalRows = 0
$tsStart = 1420041600000
$tsEnd = 0
$i = 0
while $i < $tblNum
$tb = tb . $i
sql create table $tb using $stb tags( $i )
$x = 0
while $x < $rowNum
$ts = $tsStart + $x
sql insert into $tb values ( $ts + 0a , $x , $x ) ( $ts + 1a , $x , $x ) ( $ts + 2a , $x , $x ) ( $ts + 3a , $x , $x ) ( $ts + 4a , $x , $x ) ( $ts + 5a , $x , $x ) ( $ts + 6a , $x , $x ) ( $ts + 7a , $x , $x ) ( $ts + 8a , $x , $x ) ( $ts + 9a , $x , $x ) ( $ts + 10a , $x , $x ) ( $ts + 11a , $x , $x ) ( $ts + 12a , $x , $x ) ( $ts + 13a , $x , $x ) ( $ts + 14a , $x , $x ) ( $ts + 15a , $x , $x ) ( $ts + 16a , $x , $x ) ( $ts + 17a , $x , $x ) ( $ts + 18a , $x , $x ) ( $ts + 19a , $x , $x )
$x = $x + 20
endw
$totalRows = $totalRows + $x
print info: inserted $x rows into $tb and totalRows: $totalRows
$i = $i + 1
endw
$tsEnd = $tsStart + $totalRows / $tblNum
sql select count(*) from $stb
print data00 $data00
if $data00 != $totalRows then
return -1
endi
print ============== step3: stop dnode4
system sh/exec.sh -n dnode4 -s stop -x SIGINT
sleep $sleepTimer
wait_dnode4_offline_0:
sql show dnodes
if $rows != 4 then
sleep 2000
goto wait_dnode4_offline_0
endi
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2
print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3
#print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4
#print $data0_5 $data1_5 $data2_5 $data3_5 $data4_5
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
#$dnode1Status = $data4_1
$dnode2Status = $data4_2
$dnode3Status = $data4_3
$dnode4Status = $data4_4
#$dnode5Status = $data4_5
if $dnode4Status != offline then
sleep 2000
goto wait_dnode4_offline_0
endi
wait_dnode4_vgroup_offline:
sql show vgroups
if $rows != 1 then
sleep 2000
goto wait_dnode4_vgroup_offline
endi
print show vgroups:
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1 $data5_1 $data6_1 $data7_1 $data8_1 $data9_1
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2 $data5_2 $data6_2 $data7_2 $data8_2 $data9_2
print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3 $data5_3 $data6_3 $data7_3 $data8_3 $data9_3
$dnode4Vtatus = $data4_2
$dnode3Vtatus = $data7_2
if $dnode4Vtatus != offline then
sleep 2000
goto wait_dnode4_vgroup_offline
endi
if $dnode3Vtatus != master then
sleep 2000
goto wait_dnode4_vgroup_offline
endi
print ============== step4: alter table and tag, then drop all sub tables, recreate som subtable and insert more data rows
sql alter table $stb drop column c1
sql alter table $stb add column f1 double
sql alter table $stb add tag t2 int
sql alter table $stb add tag t3 int
sql alter table $stb drop tag t1
$i = 0
while $i < $tblNum
$tb = tb . $i
sql drop table $tb
$i = $i + 1
endw
$totalRows = 0
$i = 0
while $i < $tblNum
$tb = tb . $i
sql create table $tb using $stb tags( $i , $i )
$x = 0
while $x < $rowNum
$ts = $tsStart + $x
sql insert into $tb values ( $ts + 0a , $x , $x ) ( $ts + 1a , $x , $x ) ( $ts + 2a , $x , $x ) ( $ts + 3a , $x , $x ) ( $ts + 4a , $x , $x ) ( $ts + 5a , $x , $x ) ( $ts + 6a , $x , $x ) ( $ts + 7a , $x , $x ) ( $ts + 8a , $x , $x ) ( $ts + 9a , $x , $x ) ( $ts + 10a , $x , $x ) ( $ts + 11a , $x , $x ) ( $ts + 12a , $x , $x ) ( $ts + 13a , $x , $x ) ( $ts + 14a , $x , $x ) ( $ts + 15a , $x , $x ) ( $ts + 16a , $x , $x ) ( $ts + 17a , $x , $x ) ( $ts + 18a , $x , $x ) ( $ts + 19a , $x , $x )
$x = $x + 20
endw
$totalRows = $totalRows + $x
print info: inserted $x rows into $tb and totalRows: $totalRows
$i = $i + 1
endw
$tsEnd = $tsStart + $totalRows / $tblNum
sql select count(*) from $stb
print data00 $data00
if $data00 != $totalRows then
return -1
endi
print ============== step5: restart dnode4, waiting dnode4 synced
system sh/exec.sh -n dnode4 -s start
wait_dnode4_ready:
sql show dnodes
if $rows != 4 then
sleep 2000
goto wait_dnode4_ready
endi
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2
print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3
print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4
#print $data0_5 $data1_5 $data2_5 $data3_5 $data4_5
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
#$dnode1Status = $data4_1
#$dnode2Status = $data4_2
$dnode3Status = $data4_3
$dnode4Status = $data4_4
#$dnode5Status = $data4_5
if $dnode4Status != ready then
sleep 2000
goto wait_dnode4_ready
endi
print ============== step6: check result
sql reset query cache
$cnt = 0
wait_table_dropped:
$cnt = $cnt + 1
if $cnt == 20 then
return -1
endi
sql select count(*) from $stb
if $data00 != $totalRows then
print data00: $data00 totalRows: $totalRows
sleep 2000
goto wait_table_dropped
endi
...@@ -58,10 +58,11 @@ sleep 3000 ...@@ -58,10 +58,11 @@ sleep 3000
$totalTableNum = 100 $totalTableNum = 100
$sleepTimer = 3000 $sleepTimer = 3000
$maxTables = $totalTableNum * 2
$db = db $db = db
print create database $db replica 3 maxTables $totalTableNum print create database $db replica 3 maxTables $maxTables
sql create database $db replica 3 maxTables $totalTableNum sql create database $db replica 3 maxTables $maxTables
sql use $db sql use $db
# create table , insert data # create table , insert data
......
...@@ -47,7 +47,7 @@ system sh/exec.sh -n dnode1 -s start ...@@ -47,7 +47,7 @@ system sh/exec.sh -n dnode1 -s start
sleep 3000 sleep 3000
sql connect sql connect
print ============== step2: start dnode2/dnode3/dnode4 and add into cluster , then create database with replica 3, and create table, insert data print ============== step2: start dnode2/dnode3/dnode4 and add into cluster , then create database with replica 2, and create table, insert data
system sh/exec.sh -n dnode2 -s start system sh/exec.sh -n dnode2 -s start
#system sh/exec.sh -n dnode3 -s start #system sh/exec.sh -n dnode3 -s start
system sh/exec.sh -n dnode4 -s start system sh/exec.sh -n dnode4 -s start
...@@ -56,12 +56,12 @@ sql create dnode $hostname2 ...@@ -56,12 +56,12 @@ sql create dnode $hostname2
sql create dnode $hostname4 sql create dnode $hostname4
sleep 3000 sleep 3000
$totalTableNum = 100 $totalTableNum = 10
$sleepTimer = 3000 $sleepTimer = 3000
$db = db $db = db
print create database $db replica 3 maxTables $totalTableNum print create database $db replica 2 maxTables $totalTableNum
sql create database $db replica 3 maxTables $totalTableNum sql create database $db replica 2 maxTables $totalTableNum
sql use $db sql use $db
# create table , insert data # create table , insert data
...@@ -113,8 +113,8 @@ print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3 ...@@ -113,8 +113,8 @@ print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6 #print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
#$dnode1Status = $data4_1 #$dnode1Status = $data4_1
$dnode2Status = $data4_2 $dnode2Status = $data4_2
$dnode3Status = $data4_3 #$dnode3Status = $data4_3
$dnode4Status = $data4_4 $dnode4Status = $data4_3
#$dnode5Status = $data4_5 #$dnode5Status = $data4_5
if $dnode4Status != offline then if $dnode4Status != offline then
...@@ -162,7 +162,7 @@ while $i < $tblNum ...@@ -162,7 +162,7 @@ while $i < $tblNum
endw endw
sql select count(*) from $stb sql select count(*) from $stb
print data00 $data00 print data00:$data00 totalRows:$totalRows
if $data00 != $totalRows then if $data00 != $totalRows then
return -1 return -1
endi endi
...@@ -172,8 +172,8 @@ system sh/exec.sh -n dnode4 -s start ...@@ -172,8 +172,8 @@ system sh/exec.sh -n dnode4 -s start
run_back unique/arbitrator/sync_replica_alterTable_background_add.sim run_back unique/arbitrator/sync_replica_alterTable_background_add.sim
print ============== step6: check result print ============== step6: check result
#in background.sim, add one column and insert 200 rows #in background.sim, add one column and insert 36 rows
$totalRows = $totalRows + 200 $totalRows = $totalRows + 36
$cnt = 0 $cnt = 0
wait_table_altered: wait_table_altered:
...@@ -183,7 +183,7 @@ if $cnt == 20 then ...@@ -183,7 +183,7 @@ if $cnt == 20 then
endi endi
sql select count(*) from $stb sql select count(*) from $stb
if $data00 != $totalRows then if $data00 != $totalRows then
print data00: $data00 print data00:$data00 totalRows:$totalRows
sleep 2000 sleep 2000
goto wait_table_altered goto wait_table_altered
endi endi
......
...@@ -47,7 +47,7 @@ system sh/exec.sh -n dnode1 -s start ...@@ -47,7 +47,7 @@ system sh/exec.sh -n dnode1 -s start
sleep 3000 sleep 3000
sql connect sql connect
print ============== step2: start dnode2/dnode3/dnode4 and add into cluster , then create database with replica 3, and create table, insert data print ============== step2: start dnode2/dnode3/dnode4 and add into cluster , then create database with replica 2, and create table, insert data
system sh/exec.sh -n dnode2 -s start system sh/exec.sh -n dnode2 -s start
#system sh/exec.sh -n dnode3 -s start #system sh/exec.sh -n dnode3 -s start
system sh/exec.sh -n dnode4 -s start system sh/exec.sh -n dnode4 -s start
...@@ -56,12 +56,12 @@ sql create dnode $hostname2 ...@@ -56,12 +56,12 @@ sql create dnode $hostname2
sql create dnode $hostname4 sql create dnode $hostname4
sleep 3000 sleep 3000
$totalTableNum = 100 $totalTableNum = 10
$sleepTimer = 3000 $sleepTimer = 3000
$db = db $db = db
print create database $db replica 3 maxTables $totalTableNum print create database $db replica 2 maxTables $totalTableNum
sql create database $db replica 3 maxTables $totalTableNum sql create database $db replica 2 maxTables $totalTableNum
sql use $db sql use $db
# create table , insert data # create table , insert data
...@@ -113,8 +113,8 @@ print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3 ...@@ -113,8 +113,8 @@ print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6 #print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
#$dnode1Status = $data4_1 #$dnode1Status = $data4_1
$dnode2Status = $data4_2 $dnode2Status = $data4_2
$dnode3Status = $data4_3 #$dnode3Status = $data4_3
$dnode4Status = $data4_4 $dnode4Status = $data4_3
#$dnode5Status = $data4_5 #$dnode5Status = $data4_5
if $dnode4Status != offline then if $dnode4Status != offline then
...@@ -173,7 +173,7 @@ run_back unique/arbitrator/sync_replica_alterTable_background_drop.sim ...@@ -173,7 +173,7 @@ run_back unique/arbitrator/sync_replica_alterTable_background_drop.sim
print ============== step6: check result print ============== step6: check result
#in background.sim, drop one column and add one new column, then insert 200 rows #in background.sim, drop one column and add one new column, then insert 200 rows
$totalRows = $totalRows + 200 $totalRows = $totalRows + 36
$cnt = 0 $cnt = 0
wait_table_altered: wait_table_altered:
......
...@@ -56,7 +56,7 @@ sql create dnode $hostname2 ...@@ -56,7 +56,7 @@ sql create dnode $hostname2
sql create dnode $hostname4 sql create dnode $hostname4
sleep 3000 sleep 3000
$totalTableNum = 100 $totalTableNum = 10
$sleepTimer = 3000 $sleepTimer = 3000
$db = db $db = db
...@@ -113,8 +113,8 @@ print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3 ...@@ -113,8 +113,8 @@ print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6 #print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
#$dnode1Status = $data4_1 #$dnode1Status = $data4_1
$dnode2Status = $data4_2 $dnode2Status = $data4_2
$dnode3Status = $data4_3 #$dnode3Status = $data4_3
$dnode4Status = $data4_4 $dnode4Status = $data4_3
#$dnode5Status = $data4_5 #$dnode5Status = $data4_5
if $dnode4Status != offline then if $dnode4Status != offline then
......
...@@ -56,7 +56,7 @@ sql create dnode $hostname2 ...@@ -56,7 +56,7 @@ sql create dnode $hostname2
sql create dnode $hostname4 sql create dnode $hostname4
sleep 3000 sleep 3000
$totalTableNum = 100 $totalTableNum = 10
$sleepTimer = 3000 $sleepTimer = 3000
$db = db $db = db
...@@ -162,18 +162,18 @@ while $i < $tblNum ...@@ -162,18 +162,18 @@ while $i < $tblNum
endw endw
sql select count(*) from $stb sql select count(*) from $stb
print data00 $data00 print data00:$data00 totalRows:$totalRows
if $data00 != $totalRows then if $data00 != $totalRows then
return -1 return -1
endi endi
print ============== step5: restart dnode4, while drop database in other thead when dnode4 is syncing print ============== step5: restart dnode4, while drop some tables in other thread when dnode4 is syncing
system sh/exec.sh -n dnode4 -s start system sh/exec.sh -n dnode4 -s start
run_back unique/arbitrator/sync_replica_dropTable_background.sim run_back unique/arbitrator/sync_replica_dropTable_background.sim
print ============== step6: check result print ============== step6: check result
#in background.sim, drop 10 tables #in background.sim, drop 5 tables
$totalRows = $totalRows - 10800 $totalRows = $totalRows - 5400
$cnt = 0 $cnt = 0
wait_table_dropped: wait_table_dropped:
...@@ -183,15 +183,15 @@ if $cnt == 20 then ...@@ -183,15 +183,15 @@ if $cnt == 20 then
endi endi
sql select count(*) from $stb sql select count(*) from $stb
if $data00 != $totalRows then if $data00 != $totalRows then
print data00: $data00 print data00:$data00 totalRows:$totalRows
sleep 2000 sleep 2000
goto wait_table_dropped goto wait_table_dropped
endi endi
$tblNum = $tblNum - 10 $tblNum = $tblNum - 5
sql select count(tbname) from $stb sql select count(tbname) from $stb
if $data00 != $tblNum then if $data00 != $tblNum then
print data00: $data00 print data00: $data00 tblNum: $tblNum
sleep 2000 sleep 2000
goto wait_table_dropped goto wait_table_dropped
endi endi
......
...@@ -56,7 +56,7 @@ sql create dnode $hostname3 ...@@ -56,7 +56,7 @@ sql create dnode $hostname3
sql create dnode $hostname4 sql create dnode $hostname4
sleep 3000 sleep 3000
$totalTableNum = 100 $totalTableNum = 10
$sleepTimer = 3000 $sleepTimer = 3000
$db = db $db = db
...@@ -173,7 +173,7 @@ run_back unique/arbitrator/sync_replica_alterTable_background_add.sim ...@@ -173,7 +173,7 @@ run_back unique/arbitrator/sync_replica_alterTable_background_add.sim
print ============== step6: check result print ============== step6: check result
#in background.sim, add one column and insert 200 rows #in background.sim, add one column and insert 200 rows
$totalRows = $totalRows + 200 $totalRows = $totalRows + 36
$cnt = 0 $cnt = 0
wait_table_altered: wait_table_altered:
......
...@@ -56,7 +56,7 @@ sql create dnode $hostname3 ...@@ -56,7 +56,7 @@ sql create dnode $hostname3
sql create dnode $hostname4 sql create dnode $hostname4
sleep 3000 sleep 3000
$totalTableNum = 100 $totalTableNum = 10
$sleepTimer = 3000 $sleepTimer = 3000
$db = db $db = db
...@@ -172,8 +172,8 @@ system sh/exec.sh -n dnode4 -s start ...@@ -172,8 +172,8 @@ system sh/exec.sh -n dnode4 -s start
run_back unique/arbitrator/sync_replica_alterTable_background_drop.sim run_back unique/arbitrator/sync_replica_alterTable_background_drop.sim
print ============== step6: check result print ============== step6: check result
#in background.sim, drop one column and add one new column, then insert 200 rows #in background.sim, drop one column and add one new column, then insert 36 rows
$totalRows = $totalRows + 200 $totalRows = $totalRows + 36
$cnt = 0 $cnt = 0
wait_table_altered: wait_table_altered:
......
...@@ -56,7 +56,7 @@ sql create dnode $hostname3 ...@@ -56,7 +56,7 @@ sql create dnode $hostname3
sql create dnode $hostname4 sql create dnode $hostname4
sleep 3000 sleep 3000
$totalTableNum = 100 $totalTableNum = 10
$sleepTimer = 3000 $sleepTimer = 3000
$db = db $db = db
......
...@@ -56,7 +56,7 @@ sql create dnode $hostname3 ...@@ -56,7 +56,7 @@ sql create dnode $hostname3
sql create dnode $hostname4 sql create dnode $hostname4
sleep 3000 sleep 3000
$totalTableNum = 100 $totalTableNum = 10
$sleepTimer = 3000 $sleepTimer = 3000
$db = db $db = db
...@@ -143,7 +143,7 @@ if $dnode3Vtatus != master then ...@@ -143,7 +143,7 @@ if $dnode3Vtatus != master then
sleep 2000 sleep 2000
goto wait_dnode4_vgroup_offline goto wait_dnode4_vgroup_offline
endi endi
sleep 2000
print ============== step4: insert more data rows print ============== step4: insert more data rows
$tsStart = $tsEnd + 1000 $tsStart = $tsEnd + 1000
$i = 0 $i = 0
...@@ -173,7 +173,7 @@ run_back unique/arbitrator/sync_replica_dropTable_background.sim ...@@ -173,7 +173,7 @@ run_back unique/arbitrator/sync_replica_dropTable_background.sim
print ============== step6: check result print ============== step6: check result
#in background.sim, drop 10 tables #in background.sim, drop 10 tables
$totalRows = $totalRows - 10800 $totalRows = $totalRows - 5400
$cnt = 0 $cnt = 0
wait_table_dropped: wait_table_dropped:
...@@ -188,7 +188,7 @@ if $data00 != $totalRows then ...@@ -188,7 +188,7 @@ if $data00 != $totalRows then
goto wait_table_dropped goto wait_table_dropped
endi endi
$tblNum = $tblNum - 10 $tblNum = $tblNum - 5
sql select count(tbname) from $stb sql select count(tbname) from $stb
if $data00 != $tblNum then if $data00 != $tblNum then
print data00: $data00 print data00: $data00
......
...@@ -3,7 +3,7 @@ sql connect ...@@ -3,7 +3,7 @@ sql connect
$db = db $db = db
$stb = stb $stb = stb
print =============== sync_replica_alterTable_background_add.sim step0: alter table and insert data print =============== sync_replica_alterTable_background_add.sim step0: alter table and insert data
$totalTableNum = 100 $totalTableNum = 10
sql use $db sql use $db
...@@ -12,7 +12,7 @@ print alter table $stb add column f1 float ...@@ -12,7 +12,7 @@ print alter table $stb add column f1 float
sql alter table $stb add column f1 float sql alter table $stb add column f1 float
$tblNum = $totalTableNum $tblNum = $totalTableNum
$alterTblNum = 51 $alterTblNum = 10
$i = 1 $i = 1
while $i < $alterTblNum while $i < $alterTblNum
......
...@@ -8,11 +8,11 @@ $totalTableNum = 100 ...@@ -8,11 +8,11 @@ $totalTableNum = 100
sql use $db sql use $db
#sql create table $stb (ts timestamp, c1 int) tags(t1 int) #sql create table $stb (ts timestamp, c1 int) tags(t1 int)
sql alter table $stb drop column c1
sql alter table $stb add column f1 double sql alter table $stb add column f1 double
sql alter table $stb drop column c1
$tblNum = $totalTableNum $tblNum = $totalTableNum
$alterTblNum = 51 $alterTblNum = 10
$i = 1 $i = 1
while $i < $alterTblNum while $i < $alterTblNum
......
...@@ -3,12 +3,12 @@ sql connect ...@@ -3,12 +3,12 @@ sql connect
$db = db $db = db
$stb = stb $stb = stb
print =============== sync_replica_dropTable_background.sim step0: drop table print =============== sync_replica_dropTable_background.sim step0: drop table
$totalTableNum = 100 $totalTableNum = 6
sql use $db sql use $db
$tblNum = $totalTableNum $tblNum = $totalTableNum
$dropTblNum = 11 $dropTblNum = 6
$i = 1 $i = 1
while $i < $dropTblNum while $i < $dropTblNum
......
run unique/arbitrator/dn2_mn1_cache_file_sync.sim
run unique/arbitrator/dn2_mn1_cache_file_sync_second.sim
run unique/arbitrator/dn3_mn1_full_createTableFail.sim
run unique/arbitrator/dn3_mn1_full_dropDnodeFail.sim
run unique/arbitrator/dn3_mn1_multiCreateDropTable.sim
run unique/arbitrator/dn3_mn1_nw_disable_timeout_autoDropDnode.sim
run unique/arbitrator/dn3_mn1_replica2_wal1_AddDelDnode.sim
run unique/arbitrator/dn3_mn1_replica_change_dropDnod.sim
run unique/arbitrator/dn3_mn1_replica_change.sim
run unique/arbitrator/dn3_mn1_stopDnode_timeout.sim
run unique/arbitrator/dn3_mn1_vnode_change.sim
run unique/arbitrator/dn3_mn1_vnode_corruptFile_offline.sim
run unique/arbitrator/dn3_mn1_vnode_corruptFile_online.sim
####run unique/arbitrator/dn3_mn1_vnode_delDir.sim
run unique/arbitrator/dn3_mn1_vnode_nomaster.sim
run unique/arbitrator/dn3_mn2_killDnode.sim
run unique/arbitrator/insert_duplicationTs.sim
run unique/arbitrator/offline_replica2_alterTable_online.sim
run unique/arbitrator/offline_replica2_alterTag_online.sim
run unique/arbitrator/offline_replica2_createTable_online.sim
run unique/arbitrator/offline_replica2_dropDb_online.sim
run unique/arbitrator/offline_replica2_dropTable_online.sim
run unique/arbitrator/offline_replica3_alterTable_online.sim
run unique/arbitrator/offline_replica3_alterTag_online.sim
run unique/arbitrator/offline_replica3_createTable_online.sim
run unique/arbitrator/offline_replica3_dropDb_online.sim
run unique/arbitrator/offline_replica3_dropTable_online.sim
run unique/arbitrator/replica_changeWithArbitrator.sim
run unique/arbitrator/sync_replica2_alterTable_add.sim
run unique/arbitrator/sync_replica2_alterTable_drop.sim
run unique/arbitrator/sync_replica2_dropDb.sim
run unique/arbitrator/sync_replica2_dropTable.sim
run unique/arbitrator/sync_replica3_alterTable_add.sim
run unique/arbitrator/sync_replica3_alterTable_drop.sim
run unique/arbitrator/sync_replica3_dropDb.sim
run unique/arbitrator/sync_replica3_dropTable.sim
...@@ -29,8 +29,8 @@ while $x < 1010 ...@@ -29,8 +29,8 @@ while $x < 1010
$x = $x + 1 $x = $x + 1
endw endw
sql_error create database d1 replica 2 wal 0 sql_error create database d1 replica 2 wallevel 0
sql create database d2 replica 1 wal 0 sql_error create database d2 replica 1 wallevel 0
sql_error alter database d2 replica 2 sql_error alter database d2 replica 2
system sh/exec.sh -n dnode1 -s stop -x SIGINT system sh/exec.sh -n dnode1 -s stop -x SIGINT
......
...@@ -148,25 +148,10 @@ print ========= step5 ...@@ -148,25 +148,10 @@ print ========= step5
system sh/exec.sh -n dnode2 -s stop -x SIGINT system sh/exec.sh -n dnode2 -s stop -x SIGINT
sleep 5000 sleep 5000
sql select * from d1.t1 sql_error select * from d1.t1
if $rows != 2 then sql_error select * from d2.t2
return -1 sql_error select * from d3.t3
endi sql_error select * from d4.t4
sql select * from d2.t2
if $rows != 2 then
return -1
endi
sql select * from d3.t3
if $rows != 2 then
return -1
endi
sql select * from d4.t4
if $rows != 2 then
return -1
endi
print ===== insert data print ===== insert data
...@@ -175,26 +160,6 @@ sql_error insert into d2.t2 values(now, 3) ...@@ -175,26 +160,6 @@ sql_error insert into d2.t2 values(now, 3)
sql_error insert into d3.t3 values(now, 3) sql_error insert into d3.t3 values(now, 3)
sql_error insert into d4.t4 values(now, 3) sql_error insert into d4.t4 values(now, 3)
sql select * from d1.t1
if $rows != 2 then
return -1
endi
sql select * from d2.t2
if $rows != 2 then
return -1
endi
sql select * from d3.t3
if $rows != 2 then
return -1
endi
sql select * from d4.t4
if $rows != 2 then
return -1
endi
print ========= step6 print ========= step6
system sh/exec.sh -n dnode2 -s start system sh/exec.sh -n dnode2 -s start
sleep 5000 sleep 5000
...@@ -234,25 +199,10 @@ sql_error insert into d2.t2 values(now, 3) ...@@ -234,25 +199,10 @@ sql_error insert into d2.t2 values(now, 3)
sql_error insert into d3.t3 values(now, 3) sql_error insert into d3.t3 values(now, 3)
sql_error insert into d4.t4 values(now, 3) sql_error insert into d4.t4 values(now, 3)
sql select * from d1.t1 sql_error select * from d1.t1
if $rows != 3 then sql_error select * from d2.t2
return -1 sql_error select * from d3.t3
endi sql_error select * from d4.t4
sql select * from d2.t2
if $rows != 3 then
return -1
endi
sql select * from d3.t3
if $rows != 3 then
return -1
endi
sql select * from d4.t4
if $rows != 3 then
return -1
endi
print ========= step7 print ========= step7
system sh/exec.sh -n dnode3 -s start system sh/exec.sh -n dnode3 -s start
......
...@@ -102,19 +102,15 @@ print ========= step4 ...@@ -102,19 +102,15 @@ print ========= step4
system sh/exec.sh -n dnode2 -s stop -x SIGINT system sh/exec.sh -n dnode2 -s stop -x SIGINT
sleep 5000 sleep 5000
sql insert into d1.t1 values(now, 3) -x step1 sql_error insert into d1.t1 values(now, 3)
step1: sql_error insert into d2.t2 values(now, 3)
sql insert into d2.t2 values(now, 3) -x step2 sql_error insert into d3.t3 values(now, 3)
step2: sql_error insert into d4.t4 values(now, 3)
sql insert into d3.t3 values(now, 3) -x step3
step3:
sql insert into d4.t4 values(now, 3) -x step4
step4:
sql select * from d1.t1 sql_error select * from d1.t1
sql select * from d2.t2 sql_error select * from d2.t2
sql select * from d3.t3 sql_error select * from d3.t3
sql select * from d4.t4 sql_error select * from d4.t4
print ========= step5 print ========= step5
system sh/exec.sh -n dnode2 -s start system sh/exec.sh -n dnode2 -s start
...@@ -126,14 +122,10 @@ sleep 5000 ...@@ -126,14 +122,10 @@ sleep 5000
sql reset query cache sql reset query cache
sleep 1000 sleep 1000
sql insert into d1.t1 values(now, 3) -x step11 sql_error insert into d1.t1 values(now, 3)
step11: sql_error insert into d2.t2 values(now, 3)
sql insert into d2.t2 values(now, 3) -x step21 sql_error insert into d3.t3 values(now, 3)
step21: sql_error insert into d4.t4 values(now, 3)
sql insert into d3.t3 values(now, 3) -x step31
step31:
sql insert into d4.t4 values(now, 3) -x step41
step41:
print ========= step6 print ========= step6
system sh/exec.sh -n dnode3 -s start system sh/exec.sh -n dnode3 -s start
......
...@@ -125,7 +125,7 @@ endi ...@@ -125,7 +125,7 @@ endi
system_content curl -u root:taosdata -d '[{"metric": "sys_cpu","timestamp": 1346846400,"value": 18,"tags": {"host": "web01","group1": "1","group1": "1","group1": "1","group1": "1","group1": "1","dc": "lga"}}]' 127.0.0.1:6020/opentsdb/db/put system_content curl -u root:taosdata -d '[{"metric": "sys_cpu","timestamp": 1346846400,"value": 18,"tags": {"host": "web01","group1": "1","group1": "1","group1": "1","group1": "1","group1": "1","dc": "lga"}}]' 127.0.0.1:6020/opentsdb/db/put
print $system_content print $system_content
if $system_content != @{"errors":[{"datapoint":{"metric":"sys_cpu","stable":"sys_cpu_d_bbbbbbb","table":"sys_cpu_d_bbbbbbb_lga_1_1_1_1_1_web01","timestamp":1346846400,"value":18.000000,"tags":{"dc":"lga","group1":"1","group1":"1","group1":"1","group1":"1","group1":"1","host":"web01"},"status":"error","code":-2147483135}}],"failed":1,"success":0,"affected_rows":0}@ then if $system_content != @{"errors":[{"datapoint":{"metric":"sys_cpu","stable":"sys_cpu_d_bbbbbbb","table":"sys_cpu_d_bbbbbbb_lga_1_1_1_1_1_web01","timestamp":1346846400,"value":18.000000,"tags":{"dc":"lga","group1":"1","group1":"1","group1":"1","group1":"1","group1":"1","host":"web01"},"status":"error","code":-2147482782}}],"failed":1,"success":0,"affected_rows":0}@ then
return -1 return -1
endi endi
......
...@@ -74,6 +74,7 @@ endi ...@@ -74,6 +74,7 @@ endi
sleep 100 sleep 100
system sh/exec.sh -n dnode2 -s stop -x SIGINT system sh/exec.sh -n dnode2 -s stop -x SIGINT
sleep 5000
print =============== step2 print =============== step2
sql select count(*) from $mt -x step2 sql select count(*) from $mt -x step2
...@@ -85,7 +86,7 @@ sql select count(tbcol) from $mt -x step21 ...@@ -85,7 +86,7 @@ sql select count(tbcol) from $mt -x step21
step21: step21:
system sh/exec.sh -n dnode2 -s start system sh/exec.sh -n dnode2 -s start
sleep 10000 sleep 5000
print =============== step3 print =============== step3
sql select count(tbcol) as c from $mt where ts <= 1519833840000 sql select count(tbcol) as c from $mt where ts <= 1519833840000
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册