Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
a45f3dd6
T
TDengine
项目概览
taosdata
/
TDengine
大约 1 年 前同步成功
通知
1185
Star
22015
Fork
4786
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
a45f3dd6
编写于
7月 09, 2020
作者:
S
Shengliang Guan
提交者:
GitHub
7月 09, 2020
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #2604 from taosdata/hotfix/test
[TD-876]
上级
1afcd830
1d7a046e
变更
19
隐藏空白更改
内联
并排
Showing
19 changed file
with
722 addition
and
141 deletion
+722
-141
src/inc/taoserror.h
src/inc/taoserror.h
+1
-0
src/mnode/src/mnodeDb.c
src/mnode/src/mnodeDb.c
+5
-0
src/mnode/src/mnodeShow.c
src/mnode/src/mnodeShow.c
+11
-1
src/mnode/src/mnodeTable.c
src/mnode/src/mnodeTable.c
+64
-10
src/mnode/src/mnodeVgroup.c
src/mnode/src/mnodeVgroup.c
+15
-0
tests/script/sh/deploy.sh
tests/script/sh/deploy.sh
+1
-0
tests/script/unique/cluster/client1_0.sim
tests/script/unique/cluster/client1_0.sim
+45
-5
tests/script/unique/cluster/client1_1.sim
tests/script/unique/cluster/client1_1.sim
+52
-0
tests/script/unique/cluster/client1_2.sim
tests/script/unique/cluster/client1_2.sim
+52
-0
tests/script/unique/cluster/client1_3.sim
tests/script/unique/cluster/client1_3.sim
+52
-0
tests/script/unique/cluster/client2_0.sim
tests/script/unique/cluster/client2_0.sim
+52
-0
tests/script/unique/cluster/client2_1.sim
tests/script/unique/cluster/client2_1.sim
+52
-0
tests/script/unique/cluster/client2_2.sim
tests/script/unique/cluster/client2_2.sim
+52
-0
tests/script/unique/cluster/client2_3.sim
tests/script/unique/cluster/client2_3.sim
+52
-0
tests/script/unique/cluster/cluster_main.sim
tests/script/unique/cluster/cluster_main.sim
+177
-74
tests/tsim/inc/sim.h
tests/tsim/inc/sim.h
+6
-18
tests/tsim/src/simExe.c
tests/tsim/src/simExe.c
+25
-25
tests/tsim/src/simMain.c
tests/tsim/src/simMain.c
+1
-1
tests/tsim/src/simSystem.c
tests/tsim/src/simSystem.c
+7
-7
未找到文件。
src/inc/taoserror.h
浏览文件 @
a45f3dd6
...
@@ -158,6 +158,7 @@ TAOS_DEFINE_ERROR(TSDB_CODE_MND_INVALID_DB_OPTION, 0, 0x0382, "mnode inva
...
@@ -158,6 +158,7 @@ TAOS_DEFINE_ERROR(TSDB_CODE_MND_INVALID_DB_OPTION, 0, 0x0382, "mnode inva
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_INVALID_DB
,
0
,
0x0383
,
"mnode invalid database"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_INVALID_DB
,
0
,
0x0383
,
"mnode invalid database"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_MONITOR_DB_FORBIDDEN
,
0
,
0x0384
,
"mnode monitor db forbidden"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_MONITOR_DB_FORBIDDEN
,
0
,
0x0384
,
"mnode monitor db forbidden"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_TOO_MANY_DATABASES
,
0
,
0x0385
,
"mnode too many databases"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_TOO_MANY_DATABASES
,
0
,
0x0385
,
"mnode too many databases"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_DB_IN_DROPPING
,
0
,
0x0386
,
"mnode db in dropping"
)
// dnode
// dnode
TAOS_DEFINE_ERROR
(
TSDB_CODE_DND_MSG_NOT_PROCESSED
,
0
,
0x0400
,
"dnode message not processed"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_DND_MSG_NOT_PROCESSED
,
0
,
0x0400
,
"dnode message not processed"
)
...
...
src/mnode/src/mnodeDb.c
浏览文件 @
a45f3dd6
...
@@ -965,6 +965,11 @@ static int32_t mnodeProcessAlterDbMsg(SMnodeMsg *pMsg) {
...
@@ -965,6 +965,11 @@ static int32_t mnodeProcessAlterDbMsg(SMnodeMsg *pMsg) {
mError
(
"db:%s, failed to alter, invalid db"
,
pAlter
->
db
);
mError
(
"db:%s, failed to alter, invalid db"
,
pAlter
->
db
);
return
TSDB_CODE_MND_INVALID_DB
;
return
TSDB_CODE_MND_INVALID_DB
;
}
}
if
(
pMsg
->
pDb
->
status
!=
TSDB_DB_STATUS_READY
)
{
mError
(
"db:%s, status:%d, in dropping"
,
pAlter
->
db
,
pMsg
->
pDb
->
status
);
return
TSDB_CODE_MND_DB_IN_DROPPING
;
}
return
mnodeAlterDb
(
pMsg
->
pDb
,
pAlter
,
pMsg
);
return
mnodeAlterDb
(
pMsg
->
pDb
,
pAlter
,
pMsg
);
}
}
...
...
src/mnode/src/mnodeShow.c
浏览文件 @
a45f3dd6
...
@@ -307,6 +307,11 @@ static int32_t mnodeProcessConnectMsg(SMnodeMsg *pMsg) {
...
@@ -307,6 +307,11 @@ static int32_t mnodeProcessConnectMsg(SMnodeMsg *pMsg) {
code
=
TSDB_CODE_MND_INVALID_DB
;
code
=
TSDB_CODE_MND_INVALID_DB
;
goto
connect_over
;
goto
connect_over
;
}
}
if
(
pDb
->
status
!=
TSDB_DB_STATUS_READY
)
{
mError
(
"db:%s, status:%d, in dropping"
,
pDb
->
name
,
pDb
->
status
);
return
TSDB_CODE_MND_DB_IN_DROPPING
;
}
mnodeDecDbRef
(
pDb
);
mnodeDecDbRef
(
pDb
);
}
}
...
@@ -352,6 +357,11 @@ static int32_t mnodeProcessUseMsg(SMnodeMsg *pMsg) {
...
@@ -352,6 +357,11 @@ static int32_t mnodeProcessUseMsg(SMnodeMsg *pMsg) {
if
(
pMsg
->
pDb
==
NULL
)
{
if
(
pMsg
->
pDb
==
NULL
)
{
code
=
TSDB_CODE_MND_INVALID_DB
;
code
=
TSDB_CODE_MND_INVALID_DB
;
}
}
if
(
pMsg
->
pDb
->
status
!=
TSDB_DB_STATUS_READY
)
{
mError
(
"db:%s, status:%d, in dropping"
,
pMsg
->
pDb
->
name
,
pMsg
->
pDb
->
status
);
return
TSDB_CODE_MND_DB_IN_DROPPING
;
}
return
code
;
return
code
;
}
}
...
@@ -403,4 +413,4 @@ void mnodeVacuumResult(char *data, int32_t numOfCols, int32_t rows, int32_t capa
...
@@ -403,4 +413,4 @@ void mnodeVacuumResult(char *data, int32_t numOfCols, int32_t rows, int32_t capa
memmove
(
data
+
pShow
->
offset
[
i
]
*
rows
,
data
+
pShow
->
offset
[
i
]
*
capacity
,
pShow
->
bytes
[
i
]
*
rows
);
memmove
(
data
+
pShow
->
offset
[
i
]
*
rows
,
data
+
pShow
->
offset
[
i
]
*
capacity
,
pShow
->
bytes
[
i
]
*
rows
);
}
}
}
}
}
}
\ No newline at end of file
src/mnode/src/mnodeTable.c
浏览文件 @
a45f3dd6
...
@@ -116,6 +116,11 @@ static int32_t mnodeChildTableActionInsert(SSdbOper *pOper) {
...
@@ -116,6 +116,11 @@ static int32_t mnodeChildTableActionInsert(SSdbOper *pOper) {
mError
(
"ctable:%s, vgId:%d not in db:%s"
,
pTable
->
info
.
tableId
,
pVgroup
->
vgId
,
pVgroup
->
dbName
);
mError
(
"ctable:%s, vgId:%d not in db:%s"
,
pTable
->
info
.
tableId
,
pVgroup
->
vgId
,
pVgroup
->
dbName
);
return
TSDB_CODE_MND_INVALID_DB
;
return
TSDB_CODE_MND_INVALID_DB
;
}
}
if
(
pDb
->
status
!=
TSDB_DB_STATUS_READY
)
{
mError
(
"db:%s, status:%d, in dropping"
,
pDb
->
name
,
pDb
->
status
);
return
TSDB_CODE_MND_DB_IN_DROPPING
;
}
mnodeDecDbRef
(
pDb
);
mnodeDecDbRef
(
pDb
);
SAcctObj
*
pAcct
=
mnodeGetAcct
(
pDb
->
acct
);
SAcctObj
*
pAcct
=
mnodeGetAcct
(
pDb
->
acct
);
...
@@ -284,8 +289,8 @@ static int32_t mnodeChildTableActionRestored() {
...
@@ -284,8 +289,8 @@ static int32_t mnodeChildTableActionRestored() {
if
(
pTable
==
NULL
)
break
;
if
(
pTable
==
NULL
)
break
;
SDbObj
*
pDb
=
mnodeGetDbByTableId
(
pTable
->
info
.
tableId
);
SDbObj
*
pDb
=
mnodeGetDbByTableId
(
pTable
->
info
.
tableId
);
if
(
pDb
==
NULL
)
{
if
(
pDb
==
NULL
||
pDb
->
status
!=
TSDB_DB_STATUS_READY
)
{
mError
(
"ctable:%s, failed to get db, discard it"
,
pTable
->
info
.
tableId
);
mError
(
"ctable:%s, failed to get db
or db in dropping
, discard it"
,
pTable
->
info
.
tableId
);
SSdbOper
desc
=
{.
type
=
SDB_OPER_LOCAL
,
.
pObj
=
pTable
,
.
table
=
tsChildTableSdb
};
SSdbOper
desc
=
{.
type
=
SDB_OPER_LOCAL
,
.
pObj
=
pTable
,
.
table
=
tsChildTableSdb
};
sdbDeleteRow
(
&
desc
);
sdbDeleteRow
(
&
desc
);
mnodeDecTableRef
(
pTable
);
mnodeDecTableRef
(
pTable
);
...
@@ -423,7 +428,7 @@ static int32_t mnodeSuperTableActionDestroy(SSdbOper *pOper) {
...
@@ -423,7 +428,7 @@ static int32_t mnodeSuperTableActionDestroy(SSdbOper *pOper) {
static
int32_t
mnodeSuperTableActionInsert
(
SSdbOper
*
pOper
)
{
static
int32_t
mnodeSuperTableActionInsert
(
SSdbOper
*
pOper
)
{
SSuperTableObj
*
pStable
=
pOper
->
pObj
;
SSuperTableObj
*
pStable
=
pOper
->
pObj
;
SDbObj
*
pDb
=
mnodeGetDbByTableId
(
pStable
->
info
.
tableId
);
SDbObj
*
pDb
=
mnodeGetDbByTableId
(
pStable
->
info
.
tableId
);
if
(
pDb
!=
NULL
)
{
if
(
pDb
!=
NULL
&&
pDb
->
status
==
TSDB_DB_STATUS_READY
)
{
mnodeAddSuperTableIntoDb
(
pDb
);
mnodeAddSuperTableIntoDb
(
pDb
);
}
}
mnodeDecDbRef
(
pDb
);
mnodeDecDbRef
(
pDb
);
...
@@ -685,10 +690,15 @@ static int32_t mnodeProcessCreateTableMsg(SMnodeMsg *pMsg) {
...
@@ -685,10 +690,15 @@ static int32_t mnodeProcessCreateTableMsg(SMnodeMsg *pMsg) {
SCMCreateTableMsg
*
pCreate
=
pMsg
->
rpcMsg
.
pCont
;
SCMCreateTableMsg
*
pCreate
=
pMsg
->
rpcMsg
.
pCont
;
if
(
pMsg
->
pDb
==
NULL
)
pMsg
->
pDb
=
mnodeGetDb
(
pCreate
->
db
);
if
(
pMsg
->
pDb
==
NULL
)
pMsg
->
pDb
=
mnodeGetDb
(
pCreate
->
db
);
if
(
pMsg
->
pDb
==
NULL
||
pMsg
->
pDb
->
status
!=
TSDB_DB_STATUS_READY
)
{
if
(
pMsg
->
pDb
==
NULL
)
{
mError
(
"app:%p:%p, table:%s, failed to create, db not selected"
,
pMsg
->
rpcMsg
.
ahandle
,
pMsg
,
pCreate
->
tableId
);
mError
(
"app:%p:%p, table:%s, failed to create, db not selected"
,
pMsg
->
rpcMsg
.
ahandle
,
pMsg
,
pCreate
->
tableId
);
return
TSDB_CODE_MND_DB_NOT_SELECTED
;
return
TSDB_CODE_MND_DB_NOT_SELECTED
;
}
}
if
(
pMsg
->
pDb
->
status
!=
TSDB_DB_STATUS_READY
)
{
mError
(
"db:%s, status:%d, in dropping"
,
pMsg
->
pDb
->
name
,
pMsg
->
pDb
->
status
);
return
TSDB_CODE_MND_DB_IN_DROPPING
;
}
if
(
pMsg
->
pTable
==
NULL
)
pMsg
->
pTable
=
mnodeGetTable
(
pCreate
->
tableId
);
if
(
pMsg
->
pTable
==
NULL
)
pMsg
->
pTable
=
mnodeGetTable
(
pCreate
->
tableId
);
if
(
pMsg
->
pTable
!=
NULL
&&
pMsg
->
retry
==
0
)
{
if
(
pMsg
->
pTable
!=
NULL
&&
pMsg
->
retry
==
0
)
{
...
@@ -719,10 +729,15 @@ static int32_t mnodeProcessCreateTableMsg(SMnodeMsg *pMsg) {
...
@@ -719,10 +729,15 @@ static int32_t mnodeProcessCreateTableMsg(SMnodeMsg *pMsg) {
static
int32_t
mnodeProcessDropTableMsg
(
SMnodeMsg
*
pMsg
)
{
static
int32_t
mnodeProcessDropTableMsg
(
SMnodeMsg
*
pMsg
)
{
SCMDropTableMsg
*
pDrop
=
pMsg
->
rpcMsg
.
pCont
;
SCMDropTableMsg
*
pDrop
=
pMsg
->
rpcMsg
.
pCont
;
if
(
pMsg
->
pDb
==
NULL
)
pMsg
->
pDb
=
mnodeGetDbByTableId
(
pDrop
->
tableId
);
if
(
pMsg
->
pDb
==
NULL
)
pMsg
->
pDb
=
mnodeGetDbByTableId
(
pDrop
->
tableId
);
if
(
pMsg
->
pDb
==
NULL
||
pMsg
->
pDb
->
status
!=
TSDB_DB_STATUS_READY
)
{
if
(
pMsg
->
pDb
==
NULL
)
{
mError
(
"app:%p:%p, table:%s, failed to drop table, db not selected"
,
pMsg
->
rpcMsg
.
ahandle
,
pMsg
,
pDrop
->
tableId
);
mError
(
"app:%p:%p, table:%s, failed to drop table, db not selected
or db in dropping
"
,
pMsg
->
rpcMsg
.
ahandle
,
pMsg
,
pDrop
->
tableId
);
return
TSDB_CODE_MND_DB_NOT_SELECTED
;
return
TSDB_CODE_MND_DB_NOT_SELECTED
;
}
}
if
(
pMsg
->
pDb
->
status
!=
TSDB_DB_STATUS_READY
)
{
mError
(
"db:%s, status:%d, in dropping"
,
pMsg
->
pDb
->
name
,
pMsg
->
pDb
->
status
);
return
TSDB_CODE_MND_DB_IN_DROPPING
;
}
if
(
mnodeCheckIsMonitorDB
(
pMsg
->
pDb
->
name
,
tsMonitorDbName
))
{
if
(
mnodeCheckIsMonitorDB
(
pMsg
->
pDb
->
name
,
tsMonitorDbName
))
{
mError
(
"app:%p:%p, table:%s, failed to drop table, in monitor database"
,
pMsg
->
rpcMsg
.
ahandle
,
pMsg
,
mError
(
"app:%p:%p, table:%s, failed to drop table, in monitor database"
,
pMsg
->
rpcMsg
.
ahandle
,
pMsg
,
...
@@ -757,11 +772,16 @@ static int32_t mnodeProcessTableMetaMsg(SMnodeMsg *pMsg) {
...
@@ -757,11 +772,16 @@ static int32_t mnodeProcessTableMetaMsg(SMnodeMsg *pMsg) {
pInfo
->
tableId
,
pMsg
->
rpcMsg
.
handle
,
pInfo
->
createFlag
);
pInfo
->
tableId
,
pMsg
->
rpcMsg
.
handle
,
pInfo
->
createFlag
);
if
(
pMsg
->
pDb
==
NULL
)
pMsg
->
pDb
=
mnodeGetDbByTableId
(
pInfo
->
tableId
);
if
(
pMsg
->
pDb
==
NULL
)
pMsg
->
pDb
=
mnodeGetDbByTableId
(
pInfo
->
tableId
);
if
(
pMsg
->
pDb
==
NULL
||
pMsg
->
pDb
->
status
!=
TSDB_DB_STATUS_READY
)
{
if
(
pMsg
->
pDb
==
NULL
)
{
mError
(
"app:%p:%p, table:%s, failed to get table meta, db not selected"
,
pMsg
->
rpcMsg
.
ahandle
,
pMsg
,
mError
(
"app:%p:%p, table:%s, failed to get table meta, db not selected"
,
pMsg
->
rpcMsg
.
ahandle
,
pMsg
,
pInfo
->
tableId
);
pInfo
->
tableId
);
return
TSDB_CODE_MND_DB_NOT_SELECTED
;
return
TSDB_CODE_MND_DB_NOT_SELECTED
;
}
}
if
(
pMsg
->
pDb
->
status
!=
TSDB_DB_STATUS_READY
)
{
mError
(
"db:%s, status:%d, in dropping"
,
pMsg
->
pDb
->
name
,
pMsg
->
pDb
->
status
);
return
TSDB_CODE_MND_DB_IN_DROPPING
;
}
if
(
pMsg
->
pTable
==
NULL
)
pMsg
->
pTable
=
mnodeGetTable
(
pInfo
->
tableId
);
if
(
pMsg
->
pTable
==
NULL
)
pMsg
->
pTable
=
mnodeGetTable
(
pInfo
->
tableId
);
if
(
pMsg
->
pTable
==
NULL
)
{
if
(
pMsg
->
pTable
==
NULL
)
{
...
@@ -1209,6 +1229,11 @@ static int32_t mnodeDropSuperTableColumn(SMnodeMsg *pMsg, char *colName) {
...
@@ -1209,6 +1229,11 @@ static int32_t mnodeDropSuperTableColumn(SMnodeMsg *pMsg, char *colName) {
static
int32_t
mnodeGetShowSuperTableMeta
(
STableMetaMsg
*
pMeta
,
SShowObj
*
pShow
,
void
*
pConn
)
{
static
int32_t
mnodeGetShowSuperTableMeta
(
STableMetaMsg
*
pMeta
,
SShowObj
*
pShow
,
void
*
pConn
)
{
SDbObj
*
pDb
=
mnodeGetDb
(
pShow
->
db
);
SDbObj
*
pDb
=
mnodeGetDb
(
pShow
->
db
);
if
(
pDb
==
NULL
)
return
TSDB_CODE_MND_DB_NOT_SELECTED
;
if
(
pDb
==
NULL
)
return
TSDB_CODE_MND_DB_NOT_SELECTED
;
if
(
pDb
->
status
!=
TSDB_DB_STATUS_READY
)
{
mError
(
"db:%s, status:%d, in dropping"
,
pDb
->
name
,
pDb
->
status
);
return
TSDB_CODE_MND_DB_IN_DROPPING
;
}
int32_t
cols
=
0
;
int32_t
cols
=
0
;
SSchema
*
pSchema
=
pMeta
->
schema
;
SSchema
*
pSchema
=
pMeta
->
schema
;
...
@@ -1268,6 +1293,11 @@ int32_t mnodeRetrieveShowSuperTables(SShowObj *pShow, char *data, int32_t rows,
...
@@ -1268,6 +1293,11 @@ int32_t mnodeRetrieveShowSuperTables(SShowObj *pShow, char *data, int32_t rows,
SDbObj
*
pDb
=
mnodeGetDb
(
pShow
->
db
);
SDbObj
*
pDb
=
mnodeGetDb
(
pShow
->
db
);
if
(
pDb
==
NULL
)
return
0
;
if
(
pDb
==
NULL
)
return
0
;
if
(
pDb
->
status
!=
TSDB_DB_STATUS_READY
)
{
mError
(
"db:%s, status:%d, in dropping"
,
pDb
->
name
,
pDb
->
status
);
return
0
;
}
tstrncpy
(
prefix
,
pDb
->
name
,
64
);
tstrncpy
(
prefix
,
pDb
->
name
,
64
);
strcat
(
prefix
,
TS_PATH_DELIMITER
);
strcat
(
prefix
,
TS_PATH_DELIMITER
);
...
@@ -2299,7 +2329,7 @@ static int32_t mnodeProcessMultiTableMetaMsg(SMnodeMsg *pMsg) {
...
@@ -2299,7 +2329,7 @@ static int32_t mnodeProcessMultiTableMetaMsg(SMnodeMsg *pMsg) {
if
(
pTable
==
NULL
)
continue
;
if
(
pTable
==
NULL
)
continue
;
if
(
pMsg
->
pDb
==
NULL
)
pMsg
->
pDb
=
mnodeGetDbByTableId
(
tableId
);
if
(
pMsg
->
pDb
==
NULL
)
pMsg
->
pDb
=
mnodeGetDbByTableId
(
tableId
);
if
(
pMsg
->
pDb
==
NULL
)
{
if
(
pMsg
->
pDb
==
NULL
||
pMsg
->
pDb
->
status
!=
TSDB_DB_STATUS_READY
)
{
mnodeDecTableRef
(
pTable
);
mnodeDecTableRef
(
pTable
);
continue
;
continue
;
}
}
...
@@ -2337,6 +2367,11 @@ static int32_t mnodeProcessMultiTableMetaMsg(SMnodeMsg *pMsg) {
...
@@ -2337,6 +2367,11 @@ static int32_t mnodeProcessMultiTableMetaMsg(SMnodeMsg *pMsg) {
static
int32_t
mnodeGetShowTableMeta
(
STableMetaMsg
*
pMeta
,
SShowObj
*
pShow
,
void
*
pConn
)
{
static
int32_t
mnodeGetShowTableMeta
(
STableMetaMsg
*
pMeta
,
SShowObj
*
pShow
,
void
*
pConn
)
{
SDbObj
*
pDb
=
mnodeGetDb
(
pShow
->
db
);
SDbObj
*
pDb
=
mnodeGetDb
(
pShow
->
db
);
if
(
pDb
==
NULL
)
return
TSDB_CODE_MND_DB_NOT_SELECTED
;
if
(
pDb
==
NULL
)
return
TSDB_CODE_MND_DB_NOT_SELECTED
;
if
(
pDb
->
status
!=
TSDB_DB_STATUS_READY
)
{
mError
(
"db:%s, status:%d, in dropping"
,
pDb
->
name
,
pDb
->
status
);
return
TSDB_CODE_MND_DB_IN_DROPPING
;
}
int32_t
cols
=
0
;
int32_t
cols
=
0
;
SSchema
*
pSchema
=
pMeta
->
schema
;
SSchema
*
pSchema
=
pMeta
->
schema
;
...
@@ -2385,6 +2420,11 @@ static int32_t mnodeGetShowTableMeta(STableMetaMsg *pMeta, SShowObj *pShow, void
...
@@ -2385,6 +2420,11 @@ static int32_t mnodeGetShowTableMeta(STableMetaMsg *pMeta, SShowObj *pShow, void
static
int32_t
mnodeRetrieveShowTables
(
SShowObj
*
pShow
,
char
*
data
,
int32_t
rows
,
void
*
pConn
)
{
static
int32_t
mnodeRetrieveShowTables
(
SShowObj
*
pShow
,
char
*
data
,
int32_t
rows
,
void
*
pConn
)
{
SDbObj
*
pDb
=
mnodeGetDb
(
pShow
->
db
);
SDbObj
*
pDb
=
mnodeGetDb
(
pShow
->
db
);
if
(
pDb
==
NULL
)
return
0
;
if
(
pDb
==
NULL
)
return
0
;
if
(
pDb
->
status
!=
TSDB_DB_STATUS_READY
)
{
mError
(
"db:%s, status:%d, in dropping"
,
pDb
->
name
,
pDb
->
status
);
return
0
;
}
int32_t
numOfRows
=
0
;
int32_t
numOfRows
=
0
;
SChildTableObj
*
pTable
=
NULL
;
SChildTableObj
*
pTable
=
NULL
;
...
@@ -2476,10 +2516,15 @@ static int32_t mnodeProcessAlterTableMsg(SMnodeMsg *pMsg) {
...
@@ -2476,10 +2516,15 @@ static int32_t mnodeProcessAlterTableMsg(SMnodeMsg *pMsg) {
pAlter
->
tableId
,
pMsg
->
rpcMsg
.
handle
);
pAlter
->
tableId
,
pMsg
->
rpcMsg
.
handle
);
if
(
pMsg
->
pDb
==
NULL
)
pMsg
->
pDb
=
mnodeGetDbByTableId
(
pAlter
->
tableId
);
if
(
pMsg
->
pDb
==
NULL
)
pMsg
->
pDb
=
mnodeGetDbByTableId
(
pAlter
->
tableId
);
if
(
pMsg
->
pDb
==
NULL
||
pMsg
->
pDb
->
status
!=
TSDB_DB_STATUS_READY
)
{
if
(
pMsg
->
pDb
==
NULL
)
{
mError
(
"app:%p:%p, table:%s, failed to alter table, db not selected"
,
pMsg
->
rpcMsg
.
ahandle
,
pMsg
,
pAlter
->
tableId
);
mError
(
"app:%p:%p, table:%s, failed to alter table, db not selected"
,
pMsg
->
rpcMsg
.
ahandle
,
pMsg
,
pAlter
->
tableId
);
return
TSDB_CODE_MND_DB_NOT_SELECTED
;
return
TSDB_CODE_MND_DB_NOT_SELECTED
;
}
}
if
(
pMsg
->
pDb
->
status
!=
TSDB_DB_STATUS_READY
)
{
mError
(
"db:%s, status:%d, in dropping"
,
pMsg
->
pDb
->
name
,
pMsg
->
pDb
->
status
);
return
TSDB_CODE_MND_DB_IN_DROPPING
;
}
if
(
mnodeCheckIsMonitorDB
(
pMsg
->
pDb
->
name
,
tsMonitorDbName
))
{
if
(
mnodeCheckIsMonitorDB
(
pMsg
->
pDb
->
name
,
tsMonitorDbName
))
{
mError
(
"app:%p:%p, table:%s, failed to alter table, its log db"
,
pMsg
->
rpcMsg
.
ahandle
,
pMsg
,
pAlter
->
tableId
);
mError
(
"app:%p:%p, table:%s, failed to alter table, its log db"
,
pMsg
->
rpcMsg
.
ahandle
,
pMsg
,
pAlter
->
tableId
);
...
@@ -2539,6 +2584,11 @@ static int32_t mnodeProcessAlterTableMsg(SMnodeMsg *pMsg) {
...
@@ -2539,6 +2584,11 @@ static int32_t mnodeProcessAlterTableMsg(SMnodeMsg *pMsg) {
static
int32_t
mnodeGetStreamTableMeta
(
STableMetaMsg
*
pMeta
,
SShowObj
*
pShow
,
void
*
pConn
)
{
static
int32_t
mnodeGetStreamTableMeta
(
STableMetaMsg
*
pMeta
,
SShowObj
*
pShow
,
void
*
pConn
)
{
SDbObj
*
pDb
=
mnodeGetDb
(
pShow
->
db
);
SDbObj
*
pDb
=
mnodeGetDb
(
pShow
->
db
);
if
(
pDb
==
NULL
)
return
TSDB_CODE_MND_DB_NOT_SELECTED
;
if
(
pDb
==
NULL
)
return
TSDB_CODE_MND_DB_NOT_SELECTED
;
if
(
pDb
->
status
!=
TSDB_DB_STATUS_READY
)
{
mError
(
"db:%s, status:%d, in dropping"
,
pDb
->
name
,
pDb
->
status
);
return
TSDB_CODE_MND_DB_IN_DROPPING
;
}
int32_t
cols
=
0
;
int32_t
cols
=
0
;
SSchema
*
pSchema
=
pMeta
->
schema
;
SSchema
*
pSchema
=
pMeta
->
schema
;
...
@@ -2586,7 +2636,11 @@ static int32_t mnodeGetStreamTableMeta(STableMetaMsg *pMeta, SShowObj *pShow, vo
...
@@ -2586,7 +2636,11 @@ static int32_t mnodeGetStreamTableMeta(STableMetaMsg *pMeta, SShowObj *pShow, vo
static
int32_t
mnodeRetrieveStreamTables
(
SShowObj
*
pShow
,
char
*
data
,
int32_t
rows
,
void
*
pConn
)
{
static
int32_t
mnodeRetrieveStreamTables
(
SShowObj
*
pShow
,
char
*
data
,
int32_t
rows
,
void
*
pConn
)
{
SDbObj
*
pDb
=
mnodeGetDb
(
pShow
->
db
);
SDbObj
*
pDb
=
mnodeGetDb
(
pShow
->
db
);
if
(
pDb
==
NULL
)
return
0
;
if
(
pDb
==
NULL
)
return
0
;
if
(
pDb
->
status
!=
TSDB_DB_STATUS_READY
)
{
mError
(
"db:%s, status:%d, in dropping"
,
pDb
->
name
,
pDb
->
status
);
return
0
;
}
int32_t
numOfRows
=
0
;
int32_t
numOfRows
=
0
;
SChildTableObj
*
pTable
=
NULL
;
SChildTableObj
*
pTable
=
NULL
;
...
...
src/mnode/src/mnodeVgroup.c
浏览文件 @
a45f3dd6
...
@@ -75,6 +75,11 @@ static int32_t mnodeVgroupActionInsert(SSdbOper *pOper) {
...
@@ -75,6 +75,11 @@ static int32_t mnodeVgroupActionInsert(SSdbOper *pOper) {
if
(
pDb
==
NULL
)
{
if
(
pDb
==
NULL
)
{
return
TSDB_CODE_MND_INVALID_DB
;
return
TSDB_CODE_MND_INVALID_DB
;
}
}
if
(
pDb
->
status
!=
TSDB_DB_STATUS_READY
)
{
mError
(
"db:%s, status:%d, in dropping"
,
pDb
->
name
,
pDb
->
status
);
return
TSDB_CODE_MND_DB_IN_DROPPING
;
}
pVgroup
->
pDb
=
pDb
;
pVgroup
->
pDb
=
pDb
;
pVgroup
->
prev
=
NULL
;
pVgroup
->
prev
=
NULL
;
...
@@ -435,6 +440,11 @@ int32_t mnodeGetVgroupMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *pConn) {
...
@@ -435,6 +440,11 @@ int32_t mnodeGetVgroupMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *pConn) {
if
(
pDb
==
NULL
)
{
if
(
pDb
==
NULL
)
{
return
TSDB_CODE_MND_DB_NOT_SELECTED
;
return
TSDB_CODE_MND_DB_NOT_SELECTED
;
}
}
if
(
pDb
->
status
!=
TSDB_DB_STATUS_READY
)
{
mError
(
"db:%s, status:%d, in dropping"
,
pDb
->
name
,
pDb
->
status
);
return
TSDB_CODE_MND_DB_IN_DROPPING
;
}
int32_t
cols
=
0
;
int32_t
cols
=
0
;
SSchema
*
pSchema
=
pMeta
->
schema
;
SSchema
*
pSchema
=
pMeta
->
schema
;
...
@@ -523,6 +533,11 @@ int32_t mnodeRetrieveVgroups(SShowObj *pShow, char *data, int32_t rows, void *pC
...
@@ -523,6 +533,11 @@ int32_t mnodeRetrieveVgroups(SShowObj *pShow, char *data, int32_t rows, void *pC
SDbObj
*
pDb
=
mnodeGetDb
(
pShow
->
db
);
SDbObj
*
pDb
=
mnodeGetDb
(
pShow
->
db
);
if
(
pDb
==
NULL
)
return
0
;
if
(
pDb
==
NULL
)
return
0
;
if
(
pDb
->
status
!=
TSDB_DB_STATUS_READY
)
{
mError
(
"db:%s, status:%d, in dropping"
,
pDb
->
name
,
pDb
->
status
);
return
0
;
}
pVgroup
=
pDb
->
pHead
;
pVgroup
=
pDb
->
pHead
;
while
(
pVgroup
!=
NULL
)
{
while
(
pVgroup
!=
NULL
)
{
...
...
tests/script/sh/deploy.sh
浏览文件 @
a45f3dd6
...
@@ -110,6 +110,7 @@ echo "second ${HOSTNAME}:7200" >> $TAOS_CFG
...
@@ -110,6 +110,7 @@ echo "second ${HOSTNAME}:7200" >> $TAOS_CFG
echo
"serverPort
${
NODE
}
"
>>
$TAOS_CFG
echo
"serverPort
${
NODE
}
"
>>
$TAOS_CFG
echo
"dataDir
$DATA_DIR
"
>>
$TAOS_CFG
echo
"dataDir
$DATA_DIR
"
>>
$TAOS_CFG
echo
"logDir
$LOG_DIR
"
>>
$TAOS_CFG
echo
"logDir
$LOG_DIR
"
>>
$TAOS_CFG
echo
"debugFlag 143"
>>
$TAOS_CFG
echo
"mDebugFlag 135"
>>
$TAOS_CFG
echo
"mDebugFlag 135"
>>
$TAOS_CFG
echo
"sdbDebugFlag 135"
>>
$TAOS_CFG
echo
"sdbDebugFlag 135"
>>
$TAOS_CFG
echo
"dDebugFlag 135"
>>
$TAOS_CFG
echo
"dDebugFlag 135"
>>
$TAOS_CFG
...
...
tests/script/unique/cluster/client1_0.sim
浏览文件 @
a45f3dd6
$tblStart = 0
$tblEnd = 10000
$tsStart = 1325347200000 # 2012-01-01 00:00:00.000
###############################################################
sql connect
sql connect
$db = db1
$db = db1
$stb = stb1
$stb = stb1
print =============== client1_0:
sql use $db
sql use $db
$tblNum = 1000
$i = 1
######sql create table $stb (ts timestamp, c1 int) tags(t1 int, t2 binary(8))
while $i < $tblNum
$tagPrex = ' . tag
$i = $tblStart
while $i < $tblEnd
$tb = tb . $i
$tagBinary = $tagPrex . $i
$tagBinary = $tagBinary . '
sql create table if not exists $tb using $stb tags ($i, $tagBinary)
$i = $i + 1
endw
print ====================== client1_0 create table end, start insert data ............
$rowsPerLoop = 100
$ts = $tsStart
$i = $tblStart
while $i < $tblEnd
$tb = tb . $i
$tb = tb . $i
sql create table $tb using $stb tags ($i, 'abcd')
$x = 0
while $x < $rowsPerLoop
sql insert into $tb values ( $ts + 0a , $x ) ( $ts + 2a , $x ) ( $ts + 4a , $x ) ( $ts + 6a , $x ) ( $ts + 8a , $x ) ( $ts + 10a , $x ) ( $ts + 12a , $x ) ( $ts + 14a , $x ) ( $ts + 16a , $x ) ( $ts + 18a , $x ) ( $ts + 20a , $x ) ( $ts + 22a , $x ) ( $ts + 24a , $x ) ( $ts + 26a , $x ) ( $ts + 28a , $x ) ( $ts + 30a , $x ) ( $ts + 32a , $x ) ( $ts + 34a , $x ) ( $ts + 36a , $x ) ( $ts + 38a , $x )
$x = $x + 20
$ts = $ts + 40a
endw
$totalRows = $totalRows + $x
$i = $i + 1
$i = $i + 1
if $i == $tblEnd then
$i = $tblStart
sql select count(*) from $stb -x continue_loop
print data00 $data00 totalRows $totalRows
if $data00 < $totalRows then
print ********************** select error **********************
endi
continue_loop:
print ====================== client1_0 insert data complete once ............
endi
endw
endw
tests/script/unique/cluster/client1_1.sim
0 → 100644
浏览文件 @
a45f3dd6
$tblStart = 10000
$tblEnd = 20000
$tsStart = 1325347200000 # 2012-01-01 00:00:00.000
###############################################################
sql connect
$db = db1
$stb = stb1
sql use $db
######sql create table $stb (ts timestamp, c1 int) tags(t1 int, t2 binary(8))
$tagPrex = ' . tag
$i = $tblStart
while $i < $tblEnd
$tb = tb . $i
$tagBinary = $tagPrex . $i
$tagBinary = $tagBinary . '
sql create table if not exists $tb using $stb tags ($i, $tagBinary)
$i = $i + 1
endw
$rowsPerLoop = 100
$ts = $tsStart
$i = $tblStart
while $i < $tblEnd
$tb = tb . $i
$x = 0
while $x < $rowsPerLoop
sql insert into $tb values ( $ts + 0a , $x ) ( $ts + 2a , $x ) ( $ts + 4a , $x ) ( $ts + 6a , $x ) ( $ts + 8a , $x ) ( $ts + 10a , $x ) ( $ts + 12a , $x ) ( $ts + 14a , $x ) ( $ts + 16a , $x ) ( $ts + 18a , $x ) ( $ts + 20a , $x ) ( $ts + 22a , $x ) ( $ts + 24a , $x ) ( $ts + 26a , $x ) ( $ts + 28a , $x ) ( $ts + 30a , $x ) ( $ts + 32a , $x ) ( $ts + 34a , $x ) ( $ts + 36a , $x ) ( $ts + 38a , $x )
$x = $x + 20
$ts = $ts + 40a
endw
$totalRows = $totalRows + $x
$i = $i + 1
if $i == $tblEnd then
$i = $tblStart
sql select count(*) from $stb -x continue_loop
print data00 $data00 totalRows $totalRows
if $data00 < $totalRows then
print ********************** select error **********************
endi
continue_loop:
endi
endw
tests/script/unique/cluster/client1_2.sim
0 → 100644
浏览文件 @
a45f3dd6
$tblStart = 20000
$tblEnd = 30000
$tsStart = 1325347200000 # 2012-01-01 00:00:00.000
###############################################################
sql connect
$db = db1
$stb = stb1
sql use $db
######sql create table $stb (ts timestamp, c1 int) tags(t1 int, t2 binary(8))
$tagPrex = ' . tag
$i = $tblStart
while $i < $tblEnd
$tb = tb . $i
$tagBinary = $tagPrex . $i
$tagBinary = $tagBinary . '
sql create table if not exists $tb using $stb tags ($i, $tagBinary)
$i = $i + 1
endw
$rowsPerLoop = 100
$ts = $tsStart
$i = $tblStart
while $i < $tblEnd
$tb = tb . $i
$x = 0
while $x < $rowsPerLoop
sql insert into $tb values ( $ts + 0a , $x ) ( $ts + 2a , $x ) ( $ts + 4a , $x ) ( $ts + 6a , $x ) ( $ts + 8a , $x ) ( $ts + 10a , $x ) ( $ts + 12a , $x ) ( $ts + 14a , $x ) ( $ts + 16a , $x ) ( $ts + 18a , $x ) ( $ts + 20a , $x ) ( $ts + 22a , $x ) ( $ts + 24a , $x ) ( $ts + 26a , $x ) ( $ts + 28a , $x ) ( $ts + 30a , $x ) ( $ts + 32a , $x ) ( $ts + 34a , $x ) ( $ts + 36a , $x ) ( $ts + 38a , $x )
$x = $x + 20
$ts = $ts + 40a
endw
$totalRows = $totalRows + $x
$i = $i + 1
if $i == $tblEnd then
$i = $tblStart
sql select count(*) from $stb -x continue_loop
print data00 $data00 totalRows $totalRows
if $data00 < $totalRows then
print ********************** select error **********************
endi
continue_loop:
endi
endw
tests/script/unique/cluster/client1_3.sim
0 → 100644
浏览文件 @
a45f3dd6
$tblStart = 30000
$tblEnd = 40000
$tsStart = 1325347200000 # 2012-01-01 00:00:00.000
###############################################################
sql connect
$db = db1
$stb = stb1
sql use $db
######sql create table $stb (ts timestamp, c1 int) tags(t1 int, t2 binary(8))
$tagPrex = ' . tag
$i = $tblStart
while $i < $tblEnd
$tb = tb . $i
$tagBinary = $tagPrex . $i
$tagBinary = $tagBinary . '
sql create table if not exists $tb using $stb tags ($i, $tagBinary)
$i = $i + 1
endw
$rowsPerLoop = 100
$ts = $tsStart
$i = $tblStart
while $i < $tblEnd
$tb = tb . $i
$x = 0
while $x < $rowsPerLoop
sql insert into $tb values ( $ts + 0a , $x ) ( $ts + 2a , $x ) ( $ts + 4a , $x ) ( $ts + 6a , $x ) ( $ts + 8a , $x ) ( $ts + 10a , $x ) ( $ts + 12a , $x ) ( $ts + 14a , $x ) ( $ts + 16a , $x ) ( $ts + 18a , $x ) ( $ts + 20a , $x ) ( $ts + 22a , $x ) ( $ts + 24a , $x ) ( $ts + 26a , $x ) ( $ts + 28a , $x ) ( $ts + 30a , $x ) ( $ts + 32a , $x ) ( $ts + 34a , $x ) ( $ts + 36a , $x ) ( $ts + 38a , $x )
$x = $x + 20
$ts = $ts + 40a
endw
$totalRows = $totalRows + $x
$i = $i + 1
if $i == $tblEnd then
$i = $tblStart
sql select count(*) from $stb -x continue_loop
print data00 $data00 totalRows $totalRows
if $data00 < $totalRows then
print ********************** select error **********************
endi
continue_loop:
endi
endw
tests/script/unique/cluster/client2_0.sim
0 → 100644
浏览文件 @
a45f3dd6
$tblStart = 0
$tblEnd = 10000
$tsStart = 1325347200001 # 2012-01-01 00:00:00.001
###############################################################
sql connect
$db = db1
$stb = stb1
sql use $db
######sql create table $stb (ts timestamp, c1 int) tags(t1 int, t2 binary(8))
$tagPrex = ' . tag
$i = $tblStart
while $i < $tblEnd
$tb = tb . $i
$tagBinary = $tagPrex . $i
$tagBinary = $tagBinary . '
sql create table if not exists $tb using $stb tags ($i, $tagBinary)
$i = $i + 1
endw
$rowsPerLoop = 100
$ts = $tsStart
$i = $tblStart
while $i < $tblEnd
$tb = tb . $i
$x = 0
while $x < $rowsPerLoop
sql insert into $tb values ( $ts + 0a , $x ) ( $ts + 2a , $x ) ( $ts + 4a , $x ) ( $ts + 6a , $x ) ( $ts + 8a , $x ) ( $ts + 10a , $x ) ( $ts + 12a , $x ) ( $ts + 14a , $x ) ( $ts + 16a , $x ) ( $ts + 18a , $x ) ( $ts + 20a , $x ) ( $ts + 22a , $x ) ( $ts + 24a , $x ) ( $ts + 26a , $x ) ( $ts + 28a , $x ) ( $ts + 30a , $x ) ( $ts + 32a , $x ) ( $ts + 34a , $x ) ( $ts + 36a , $x ) ( $ts + 38a , $x )
$x = $x + 20
$ts = $ts + 40a
endw
$totalRows = $totalRows + $x
$i = $i + 1
if $i == $tblEnd then
$i = $tblStart
sql select count(*) from $stb -x continue_loop
print data00 $data00 totalRows $totalRows
if $data00 < $totalRows then
print ********************** select error **********************
endi
continue_loop:
endi
endw
tests/script/unique/cluster/client2_1.sim
0 → 100644
浏览文件 @
a45f3dd6
$tblStart = 10000
$tblEnd = 20000
$tsStart = 1325347200001 # 2012-01-01 00:00:00.000
###############################################################
sql connect
$db = db1
$stb = stb1
sql use $db
######sql create table $stb (ts timestamp, c1 int) tags(t1 int, t2 binary(8))
$tagPrex = ' . tag
$i = $tblStart
while $i < $tblEnd
$tb = tb . $i
$tagBinary = $tagPrex . $i
$tagBinary = $tagBinary . '
sql create table if not exists $tb using $stb tags ($i, $tagBinary)
$i = $i + 1
endw
$rowsPerLoop = 100
$ts = $tsStart
$i = $tblStart
while $i < $tblEnd
$tb = tb . $i
$x = 0
while $x < $rowsPerLoop
sql insert into $tb values ( $ts + 0a , $x ) ( $ts + 2a , $x ) ( $ts + 4a , $x ) ( $ts + 6a , $x ) ( $ts + 8a , $x ) ( $ts + 10a , $x ) ( $ts + 12a , $x ) ( $ts + 14a , $x ) ( $ts + 16a , $x ) ( $ts + 18a , $x ) ( $ts + 20a , $x ) ( $ts + 22a , $x ) ( $ts + 24a , $x ) ( $ts + 26a , $x ) ( $ts + 28a , $x ) ( $ts + 30a , $x ) ( $ts + 32a , $x ) ( $ts + 34a , $x ) ( $ts + 36a , $x ) ( $ts + 38a , $x )
$x = $x + 20
$ts = $ts + 40a
endw
$totalRows = $totalRows + $x
$i = $i + 1
if $i == $tblEnd then
$i = $tblStart
sql select count(*) from $stb -x continue_loop
print data00 $data00 totalRows $totalRows
if $data00 < $totalRows then
print ********************** select error **********************
endi
continue_loop:
endi
endw
tests/script/unique/cluster/client2_2.sim
0 → 100644
浏览文件 @
a45f3dd6
$tblStart = 20000
$tblEnd = 30000
$tsStart = 1325347200001 # 2012-01-01 00:00:00.000
###############################################################
sql connect
$db = db1
$stb = stb1
sql use $db
######sql create table $stb (ts timestamp, c1 int) tags(t1 int, t2 binary(8))
$tagPrex = ' . tag
$i = $tblStart
while $i < $tblEnd
$tb = tb . $i
$tagBinary = $tagPrex . $i
$tagBinary = $tagBinary . '
sql create table if not exists $tb using $stb tags ($i, $tagBinary)
$i = $i + 1
endw
$rowsPerLoop = 100
$ts = $tsStart
$i = $tblStart
while $i < $tblEnd
$tb = tb . $i
$x = 0
while $x < $rowsPerLoop
sql insert into $tb values ( $ts + 0a , $x ) ( $ts + 2a , $x ) ( $ts + 4a , $x ) ( $ts + 6a , $x ) ( $ts + 8a , $x ) ( $ts + 10a , $x ) ( $ts + 12a , $x ) ( $ts + 14a , $x ) ( $ts + 16a , $x ) ( $ts + 18a , $x ) ( $ts + 20a , $x ) ( $ts + 22a , $x ) ( $ts + 24a , $x ) ( $ts + 26a , $x ) ( $ts + 28a , $x ) ( $ts + 30a , $x ) ( $ts + 32a , $x ) ( $ts + 34a , $x ) ( $ts + 36a , $x ) ( $ts + 38a , $x )
$x = $x + 20
$ts = $ts + 40a
endw
$totalRows = $totalRows + $x
$i = $i + 1
if $i == $tblEnd then
$i = $tblStart
sql select count(*) from $stb -x continue_loop
print data00 $data00 totalRows $totalRows
if $data00 < $totalRows then
print ********************** select error **********************
endi
continue_loop:
endi
endw
tests/script/unique/cluster/client2_3.sim
0 → 100644
浏览文件 @
a45f3dd6
$tblStart = 30000
$tblEnd = 40000
$tsStart = 1325347200001 # 2012-01-01 00:00:00.000
###############################################################
sql connect
$db = db1
$stb = stb1
sql use $db
######sql create table $stb (ts timestamp, c1 int) tags(t1 int, t2 binary(8))
$tagPrex = ' . tag
$i = $tblStart
while $i < $tblEnd
$tb = tb . $i
$tagBinary = $tagPrex . $i
$tagBinary = $tagBinary . '
sql create table if not exists $tb using $stb tags ($i, $tagBinary)
$i = $i + 1
endw
$rowsPerLoop = 100
$ts = $tsStart
$i = $tblStart
while $i < $tblEnd
$tb = tb . $i
$x = 0
while $x < $rowsPerLoop
sql insert into $tb values ( $ts + 0a , $x ) ( $ts + 2a , $x ) ( $ts + 4a , $x ) ( $ts + 6a , $x ) ( $ts + 8a , $x ) ( $ts + 10a , $x ) ( $ts + 12a , $x ) ( $ts + 14a , $x ) ( $ts + 16a , $x ) ( $ts + 18a , $x ) ( $ts + 20a , $x ) ( $ts + 22a , $x ) ( $ts + 24a , $x ) ( $ts + 26a , $x ) ( $ts + 28a , $x ) ( $ts + 30a , $x ) ( $ts + 32a , $x ) ( $ts + 34a , $x ) ( $ts + 36a , $x ) ( $ts + 38a , $x )
$x = $x + 20
$ts = $ts + 40a
endw
$totalRows = $totalRows + $x
$i = $i + 1
if $i == $tblEnd then
$i = $tblStart
sql select count(*) from $stb -x continue_loop
print data00 $data00 totalRows $totalRows
if $data00 < $totalRows then
print ********************** select error **********************
endi
continue_loop:
endi
endw
tests/script/unique/cluster/cluster_main.sim
浏览文件 @
a45f3dd6
...
@@ -61,19 +61,29 @@ sql use $db
...
@@ -61,19 +61,29 @@ sql use $db
print ============== step3: create stable stb1
print ============== step3: create stable stb1
$stb = stb1
$stb = stb1
sql create table $stb (ts timestamp, c1 int
, c2 int
) tags(t1 int, t2 binary(8))
sql create table $stb (ts timestamp, c1 int) tags(t1 int, t2 binary(8))
print ============== step4: start 10 client1/ 10 client2/ 10 client3/ 10 client4/ 1 client5
print ============== step4: start 10 client1/ 10 client2/ 10 client3/ 10 client4/ 1 client5
#run_back unique/cluster/client_test.sim
run_back unique/cluster/client1_0.sim
run_back unique/cluster/client1_0.sim
#run_back unique/cluster/client1_1.sim
run_back unique/cluster/client1_1.sim
#run_back unique/big_cluster/client1_2.sim
run_back unique/cluster/client1_2.sim
#run_back unique/big_cluster/client1_3.sim
run_back unique/cluster/client1_3.sim
#run_back unique/big_cluster/client1_4.sim
run_back unique/cluster/client2_0.sim
#run_back unique/big_cluster/client1_5.sim
run_back unique/cluster/client2_1.sim
#run_back unique/big_cluster/client1_6.sim
run_back unique/cluster/client2_2.sim
#run_back unique/big_cluster/client1_7.sim
run_back unique/cluster/client2_3.sim
#run_back unique/big_cluster/client1_8.sim
run_back unique/cluster/client3.sim
#run_back unique/big_cluster/client1_9.sim
run_back unique/cluster/client4.sim
sleep 20000
wait_subsim_insert_data:
sql select count(*) from $stb
print data00 $data00
if $data00 < 1 then
sleep 3000
goto wait_subsim_insert_data
endi
print wait for a while to let clients start insert data
print wait for a while to let clients start insert data
...
@@ -81,7 +91,7 @@ sleep 5000
...
@@ -81,7 +91,7 @@ sleep 5000
$loop_cnt = 0
$loop_cnt = 0
loop_cluster_do:
loop_cluster_do:
print **** **** **** START loop cluster do **** **** **** ****
print **** **** **** START loop cluster do
(loop_cnt: $loop_cnt )
**** **** **** ****
print ============== step5: start dnode4 and add into cluster, then wait dnode4 ready
print ============== step5: start dnode4 and add into cluster, then wait dnode4 ready
system sh/exec.sh -n dnode4 -s start
system sh/exec.sh -n dnode4 -s start
sql create dnode $hostname4
sql create dnode $hostname4
...
@@ -112,7 +122,7 @@ elif $loop_cnt == 1 then
...
@@ -112,7 +122,7 @@ elif $loop_cnt == 1 then
elif $loop_cnt == 2 then
elif $loop_cnt == 2 then
$dnode4Status = $data4_8
$dnode4Status = $data4_8
else then
else then
print **** **** **** END loop cluster do
2
**** **** **** ****
print **** **** **** END loop cluster do
(loop_cnt: $loop_cnt )
**** **** **** ****
return
return
endi
endi
...
@@ -154,7 +164,7 @@ elif $loop_cnt == 2 then
...
@@ -154,7 +164,7 @@ elif $loop_cnt == 2 then
elif $loop_cnt == 3 then
elif $loop_cnt == 3 then
$dnode1Status = $data4_9
$dnode1Status = $data4_9
else then
else then
print **** **** **** END loop cluster do
1
**** **** **** ****
print **** **** **** END loop cluster do
(loop_cnt: $loop_cnt )
**** **** **** ****
return
return
endi
endi
...
@@ -163,44 +173,124 @@ if $dnode1Status != offline then
...
@@ -163,44 +173,124 @@ if $dnode1Status != offline then
goto wait_dnode1_offline_0
goto wait_dnode1_offline_0
endi
endi
$cnt = 0
wait_mnode1_offline_0:
$cnt = $cnt + 1
if $cnt == 10 then
return -1
endi
print show mnodes
sql show mnodes
if $rows != 3 then
sleep 2000
goto wait_mnode1_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
$mnode1Status = $data2_1
$mnode2Status = $data2_2
$mnode3Status = $data2_3
$mnode4Status = $data2_4
if $loop_cnt == 0 then
$mnode1Status = $data2_1
elif $loop_cnt == 1 then
$mnode1Status = $data2_5
elif $loop_cnt == 2 then
$mnode1Status = $data2_7
elif $loop_cnt == 3 then
$mnode1Status = $data2_9
else then
print **** **** **** END loop cluster do (loop_cnt: $loop_cnt )**** **** **** ****
return
endi
if $mnode1Status != offline then
sleep 2000
goto wait_mnode1_offline_0
endi
sql drop dnode $hostname1
sql drop dnode $hostname1
system rm -rf ../../../sim/dnode1
system rm -rf ../../../sim/dnode1
/data
$cnt = 0
wait_mnode4_slave_0:
$cnt = $cnt + 1
if $cnt == 10 then
return -1
endi
print show mnodes
sql show mnodes
if $rows != 3 then
sleep 2000
goto wait_mnode4_slave_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
$mnode1Status = $data2_1
$mnode2Status = $data2_2
$mnode3Status = $data2_3
$mnode4Status = $data2_4
print ============== step7: stop dnode2, because mnodes < 50%, so clusert don't provide services
if $loop_cnt == 0 then
$mnode4Status = $data2_4
elif $loop_cnt == 1 then
$mnode4Status = $data2_6
elif $loop_cnt == 2 then
$mnode4Status = $data2_8
else then
print **** **** **** END loop cluster do (loop_cnt: $loop_cnt )**** **** **** ****
return
endi
if $mnode4Status != slave then
sleep 2000
goto wait_mnode4_slave_0
endi
print ============== step7: stop dnode2, waiting dnode4
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec.sh -n dnode2 -s stop -x SIGINT
sql show dnodes -x wait_dnode2_offline_0
$cnt = 0
wait_dnode2_offline_0:
$cnt = $cnt + 1
if $cnt == 10 then
return -1
endi
sql show dnodes
if $rows != 3 then
if $rows != 3 then
sleep 2000
sleep 2000
goto wait_dnode2_offline_0
goto wait_dnode2_offline_0
endi
endi
wait_dnode2_offline_0:
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
$dnode1Status = $data4_1
$dnode2Status = $data4_2
$dnode3Status = $data4_3
$dnode4Status = $data4_4
#$cnt = 0
if $dnode2Status != offline then
#wait_dnode2_offline_0:
sleep 2000
#$cnt = $cnt + 1
goto wait_dnode2_offline_0
#if $cnt == 10 then
endi
# return -1
#endi
sleep 3000
#sql show dnodes -x wait_dnode2_offline_0
print show mnodes
#if $rows != 3 then
sql show mnodes
# sleep 2000
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1
# goto wait_dnode2_offline_0
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2
#endi
print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3
#print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1
print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4
#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
#$dnode1Status = $data4_1
#$dnode2Status = $data4_2
#$dnode3Status = $data4_3
#$dnode4Status = $data4_4
#
#if $dnode2Status != offline then
# sleep 2000
# goto wait_dnode1_offline_0
#endi
print ============== step8: restart dnode2, then wait sync end
print ============== step8: restart dnode2, then wait sync end
system sh/exec.sh -n dnode2 -s start
system sh/exec.sh -n dnode2 -s start
...
@@ -230,9 +320,17 @@ if $dnode2Status != ready then
...
@@ -230,9 +320,17 @@ if $dnode2Status != ready then
goto wait_dnode2_ready_0
goto wait_dnode2_ready_0
endi
endi
sleep 3000
print show mnodes
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
print ============== step9: stop dnode3, then wait sync end
print ============== step9: stop dnode3, then wait sync end
system sh/exec.sh -n dnode3 -s stop -x SIGINT
system sh/exec.sh -n dnode3 -s stop -x SIGINT
sleep 3000
$cnt = 0
$cnt = 0
wait_dnode3_offline_0:
wait_dnode3_offline_0:
...
@@ -261,6 +359,7 @@ endi
...
@@ -261,6 +359,7 @@ endi
print ============== step10: restart dnode3, then wait sync end
print ============== step10: restart dnode3, then wait sync end
system sh/exec.sh -n dnode3 -s start
system sh/exec.sh -n dnode3 -s start
sleep 3000
$cnt = 0
$cnt = 0
wait_dnode3_ready_0:
wait_dnode3_ready_0:
...
@@ -289,6 +388,7 @@ endi
...
@@ -289,6 +388,7 @@ endi
print ============== step11: stop dnode4, then wait sync end
print ============== step11: stop dnode4, then wait sync end
system sh/exec.sh -n dnode4 -s stop -x SIGINT
system sh/exec.sh -n dnode4 -s stop -x SIGINT
sleep 3000
$cnt = 0
$cnt = 0
wait_dnode4_offline_0:
wait_dnode4_offline_0:
...
@@ -317,7 +417,7 @@ elif $loop_cnt == 1 then
...
@@ -317,7 +417,7 @@ elif $loop_cnt == 1 then
elif $loop_cnt == 2 then
elif $loop_cnt == 2 then
$dnode4Status = $data4_8
$dnode4Status = $data4_8
else then
else then
print **** **** **** END loop cluster do
2
**** **** **** ****
print **** **** **** END loop cluster do
(loop_cnt: $loop_cnt )
**** **** **** ****
return
return
endi
endi
...
@@ -328,9 +428,10 @@ endi
...
@@ -328,9 +428,10 @@ endi
print ============== step12: restart dnode4, then wait sync end
print ============== step12: restart dnode4, then wait sync end
system sh/exec.sh -n dnode4 -s start
system sh/exec.sh -n dnode4 -s start
sleep 3000
$cnt = 0
$cnt = 0
wait_dnode4_ready_
0
:
wait_dnode4_ready_
1
:
$cnt = $cnt + 1
$cnt = $cnt + 1
if $cnt == 10 then
if $cnt == 10 then
return -1
return -1
...
@@ -338,7 +439,7 @@ endi
...
@@ -338,7 +439,7 @@ endi
sql show dnodes
sql show dnodes
if $rows != 3 then
if $rows != 3 then
sleep 2000
sleep 2000
goto wait_dnode4_ready_
0
goto wait_dnode4_ready_
1
endi
endi
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2
...
@@ -356,27 +457,28 @@ elif $loop_cnt == 1 then
...
@@ -356,27 +457,28 @@ elif $loop_cnt == 1 then
elif $loop_cnt == 2 then
elif $loop_cnt == 2 then
$dnode4Status = $data4_8
$dnode4Status = $data4_8
else then
else then
print **** **** **** END loop cluster do
2
**** **** **** ****
print **** **** **** END loop cluster do
(loop_cnt: $loop_cnt )
**** **** **** ****
return
return
endi
endi
if $dnode4Status != ready then
if $dnode4Status != ready then
sleep 2000
sleep 2000
goto wait_dnode4_ready_
0
goto wait_dnode4_ready_
1
endi
endi
print ============== step13: alter replica 2
print ============== step13: alter replica 2
sql alter database $db replica 2
sql alter database $db replica 2
sql show database
sql show database
s
print $data0
_1 $data1_1 $data2_1 $data3_1 $data4_1
print $data0
0 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
if $data0
_5
!= 2 then
if $data0
4
!= 2 then
print rplica is not modify to 2, error!!!!!!
print rplica is not modify to 2, error!!!!!!
return
return
-1
endi
endi
print ============== step14: stop and drop dnode4, then remove data dir of dnode4
print ============== step14: stop and drop dnode4, then remove data dir of dnode4
system sh/exec.sh -n dnode4 -s stop -x SIGINT
system sh/exec.sh -n dnode4 -s stop -x SIGINT
sleep 3000
$cnt = 0
$cnt = 0
wait_dnode4_offline_1:
wait_dnode4_offline_1:
...
@@ -405,7 +507,7 @@ elif $loop_cnt == 1 then
...
@@ -405,7 +507,7 @@ elif $loop_cnt == 1 then
elif $loop_cnt == 2 then
elif $loop_cnt == 2 then
$dnode4Status = $data4_8
$dnode4Status = $data4_8
else then
else then
print **** **** **** END loop cluster do
2
**** **** **** ****
print **** **** **** END loop cluster do
(loop_cnt: $loop_cnt )
**** **** **** ****
return
return
endi
endi
...
@@ -414,32 +516,34 @@ if $dnode4Status != offline then
...
@@ -414,32 +516,34 @@ if $dnode4Status != offline then
goto wait_dnode4_offline_1
goto wait_dnode4_offline_1
endi
endi
sleep 3000
sql drop dnode $hostname4
sql drop dnode $hostname4
system rm -rf ../../../sim/dnode4
system rm -rf ../../../sim/dnode4
/data
print ============== step15: alter replica 1
print ============== step15: alter replica 1
sql alter database $db replica 1
sql alter database $db replica 1
sql show database
sql show databases
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1
print $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
if $data04 != 1 then
if $data0_5 != 1 then
print rplica is not modify to 1, error!!!!!!
print rplica is not modify to 1, error!!!!!!
return
return
-1
endi
endi
print ============== step16: alter replica 2
print ============== step16: alter replica 2
sql alter database $db replica 1
sql alter database $db replica 2
sql show database
sql show databases
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1
print $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
if $data04 != 2 then
if $data0_5 != 2 then
print rplica is not modify to 2, error!!!!!!
print rplica is not modify to 2, error!!!!!!
return
return
-1
endi
endi
print ============== step17: start dnode1 and add into cluster, then wait dnode1 ready
print ============== step17: start dnode1 and add into cluster, then wait dnode1 ready
system sh/cfg.sh -n dnode1 -c first -v $hostname2
system sh/cfg.sh -n dnode1 -c second -v $hostname3
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
sql create dnode $hostname1
sql create dnode $hostname1
...
@@ -457,21 +561,20 @@ print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1
...
@@ -457,21 +561,20 @@ print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2
print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3
print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3
print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4
print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4
print $data0_5 $data1_5 $data2_5 $data3_5 $data4_5
#$dnode1Status = $data4_1
#$dnode1Status = $data4_1
$dnode2Status = $data4_2
$dnode2Status = $data4_2
$dnode3Status = $data4_3
$dnode3Status = $data4_3
$dnode4Status = $data4_4
$dnode4Status = $data4_4
if $loop_cnt == 0 then
if $loop_cnt == 0 then
$dnode1Status = $data4_1
elif $loop_cnt == 1 then
$dnode1Status = $data4_5
$dnode1Status = $data4_5
elif $loop_cnt ==
2
then
elif $loop_cnt ==
1
then
$dnode1Status = $data4_7
$dnode1Status = $data4_7
elif $loop_cnt ==
3
then
elif $loop_cnt ==
2
then
$dnode1Status = $data4_9
$dnode1Status = $data4_9
else then
else then
print **** **** **** END loop cluster do
3
**** **** **** ****
print **** **** **** END loop cluster do
(loop_cnt: $loop_cnt )
**** **** **** ****
return
return
endi
endi
...
@@ -482,13 +585,13 @@ endi
...
@@ -482,13 +585,13 @@ endi
print ============== step18: alter replica 3
print ============== step18: alter replica 3
sql alter database $db replica 3
sql alter database $db replica 3
sql show database
sql show databases
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1
print $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
if $data04 != 3 then
if $data0_5 != 3 then
print rplica is not modify to 3, error!!!!!!
print rplica is not modify to 3, error!!!!!!
return
return
-1
endi
endi
print **** **** **** (loop_cnt: $loop_cnt ) end, continue...... **** **** **** ****
$loop_cnt = $loop_cnt + 1
$loop_cnt = $loop_cnt + 1
goto loop_cluster_do
goto loop_cluster_do
tests/tsim/inc/sim.h
浏览文件 @
a45f3dd6
...
@@ -51,24 +51,12 @@
...
@@ -51,24 +51,12 @@
#define FAILED_POSTFIX ""
#define FAILED_POSTFIX ""
#endif
#endif
#define simError(...) \
#define simFatal(...) { if (simDebugFlag & DEBUG_FATAL) { taosPrintLog("SIM FATAL ", 255, __VA_ARGS__); }}
if (simDebugFlag & DEBUG_ERROR) { \
#define simError(...) { if (simDebugFlag & DEBUG_ERROR) { taosPrintLog("SIM ERROR ", 255, __VA_ARGS__); }}
taosPrintLog("ERROR SIM ", 255, __VA_ARGS__); \
#define simWarn(...) { if (simDebugFlag & DEBUG_WARN) { taosPrintLog("SIM WARN ", 255, __VA_ARGS__); }}
}
#define simInfo(...) { if (simDebugFlag & DEBUG_INFO) { taosPrintLog("SIM INFO ", 255, __VA_ARGS__); }}
#define simWarn(...) \
#define simDebug(...) { if (simDebugFlag & DEBUG_DEBUG) { taosPrintLog("SIM DEBUG ", simDebugFlag, __VA_ARGS__); }}
if (simDebugFlag & DEBUG_WARN) { \
#define simTrace(...) { if (simDebugFlag & DEBUG_TRACE) { taosPrintLog("SIM TRACE ", simDebugFlag, __VA_ARGS__); }}
taosPrintLog("WARN SIM ", simDebugFlag, __VA_ARGS__); \
}
#define simTrace(...) \
if (simDebugFlag & DEBUG_TRACE) { \
taosPrintLog("SIM ", simDebugFlag, __VA_ARGS__); \
}
#define simDump(x, y) \
if (simDebugFlag & DEBUG_DUMP) { \
taosDumpData(x, y); \
}
#define simPrint(...) \
{ taosPrintLog("SIM ", 255, __VA_ARGS__); }
enum
{
SIM_SCRIPT_TYPE_MAIN
,
SIM_SCRIPT_TYPE_BACKGROUND
};
enum
{
SIM_SCRIPT_TYPE_MAIN
,
SIM_SCRIPT_TYPE_BACKGROUND
};
...
...
tests/tsim/src/simExe.c
浏览文件 @
a45f3dd6
...
@@ -75,7 +75,7 @@ char *simGetVariable(SScript *script, char *varName, int varLen) {
...
@@ -75,7 +75,7 @@ char *simGetVariable(SScript *script, char *varName, int varLen) {
for
(
int
i
=
0
;
i
<
MAX_QUERY_ROW_NUM
;
++
i
)
{
for
(
int
i
=
0
;
i
<
MAX_QUERY_ROW_NUM
;
++
i
)
{
if
(
strncmp
(
keyName
,
script
->
data
[
i
][
0
],
keyLen
)
==
0
)
{
if
(
strncmp
(
keyName
,
script
->
data
[
i
][
0
],
keyLen
)
==
0
)
{
sim
Trace
(
"script:%s, keyName:%s, keyValue:%s"
,
script
->
fileName
,
script
->
data
[
i
][
0
],
script
->
data
[
i
][
col
]);
sim
Debug
(
"script:%s, keyName:%s, keyValue:%s"
,
script
->
fileName
,
script
->
data
[
i
][
0
],
script
->
data
[
i
][
col
]);
return
script
->
data
[
i
][
col
];
return
script
->
data
[
i
][
col
];
}
}
}
}
...
@@ -90,7 +90,7 @@ char *simGetVariable(SScript *script, char *varName, int varLen) {
...
@@ -90,7 +90,7 @@ char *simGetVariable(SScript *script, char *varName, int varLen) {
return
"null"
;
return
"null"
;
}
}
sim
Trace
(
"script:%s, data[%d][%d]=%s"
,
script
->
fileName
,
row
,
col
,
script
->
data
[
row
][
col
]);
sim
Debug
(
"script:%s, data[%d][%d]=%s"
,
script
->
fileName
,
row
,
col
,
script
->
data
[
row
][
col
]);
return
script
->
data
[
row
][
col
];
return
script
->
data
[
row
][
col
];
}
}
}
}
...
@@ -102,7 +102,7 @@ char *simGetVariable(SScript *script, char *varName, int varLen) {
...
@@ -102,7 +102,7 @@ char *simGetVariable(SScript *script, char *varName, int varLen) {
}
}
if
(
strncmp
(
varName
,
var
->
varName
,
varLen
)
==
0
)
{
if
(
strncmp
(
varName
,
var
->
varName
,
varLen
)
==
0
)
{
// if (strlen(var->varValue) != 0)
// if (strlen(var->varValue) != 0)
// sim
Trace
("script:%s, var:%s, value:%s", script->fileName,
// sim
Debug
("script:%s, var:%s, value:%s", script->fileName,
// var->varName, var->varValue);
// var->varName, var->varValue);
return
var
->
varValue
;
return
var
->
varValue
;
}
}
...
@@ -240,7 +240,7 @@ bool simExecuteRunCmd(SScript *script, char *option) {
...
@@ -240,7 +240,7 @@ bool simExecuteRunCmd(SScript *script, char *option) {
return
false
;
return
false
;
}
}
sim
Print
(
"script:%s, start to execute"
,
newScript
->
fileName
);
sim
Info
(
"script:%s, start to execute"
,
newScript
->
fileName
);
newScript
->
type
=
SIM_SCRIPT_TYPE_MAIN
;
newScript
->
type
=
SIM_SCRIPT_TYPE_MAIN
;
simScriptPos
++
;
simScriptPos
++
;
...
@@ -262,7 +262,7 @@ bool simExecuteRunBackCmd(SScript *script, char *option) {
...
@@ -262,7 +262,7 @@ bool simExecuteRunBackCmd(SScript *script, char *option) {
sprintf
(
script
->
error
,
"lineNum:%d. parse file:%s error"
,
script
->
lines
[
script
->
linePos
].
lineNum
,
fileName
);
sprintf
(
script
->
error
,
"lineNum:%d. parse file:%s error"
,
script
->
lines
[
script
->
linePos
].
lineNum
,
fileName
);
return
false
;
return
false
;
}
}
sim
Print
(
"script:%s, start to execute in background"
,
newScript
->
fileName
);
sim
Info
(
"script:%s, start to execute in background"
,
newScript
->
fileName
);
newScript
->
type
=
SIM_SCRIPT_TYPE_BACKGROUND
;
newScript
->
type
=
SIM_SCRIPT_TYPE_BACKGROUND
;
script
->
bgScripts
[
script
->
bgScriptLen
++
]
=
newScript
;
script
->
bgScripts
[
script
->
bgScriptLen
++
]
=
newScript
;
...
@@ -336,7 +336,7 @@ bool simExecutePrintCmd(SScript *script, char *rest) {
...
@@ -336,7 +336,7 @@ bool simExecutePrintCmd(SScript *script, char *rest) {
simVisuallizeOption
(
script
,
rest
,
buf
);
simVisuallizeOption
(
script
,
rest
,
buf
);
rest
=
buf
;
rest
=
buf
;
sim
Print
(
"script:%s, %s"
,
script
->
fileName
,
rest
);
sim
Info
(
"script:%s, %s"
,
script
->
fileName
,
rest
);
script
->
linePos
++
;
script
->
linePos
++
;
return
true
;
return
true
;
}
}
...
@@ -351,9 +351,9 @@ bool simExecuteSleepCmd(SScript *script, char *option) {
...
@@ -351,9 +351,9 @@ bool simExecuteSleepCmd(SScript *script, char *option) {
delta
=
atoi
(
option
);
delta
=
atoi
(
option
);
if
(
delta
<=
0
)
delta
=
5
;
if
(
delta
<=
0
)
delta
=
5
;
sim
Print
(
"script:%s, sleep %dms begin"
,
script
->
fileName
,
delta
);
sim
Info
(
"script:%s, sleep %dms begin"
,
script
->
fileName
,
delta
);
taosMsleep
(
delta
);
taosMsleep
(
delta
);
sim
Print
(
"script:%s, sleep %dms finished"
,
script
->
fileName
,
delta
);
sim
Info
(
"script:%s, sleep %dms finished"
,
script
->
fileName
,
delta
);
script
->
linePos
++
;
script
->
linePos
++
;
return
true
;
return
true
;
...
@@ -372,7 +372,7 @@ bool simExecuteReturnCmd(SScript *script, char *option) {
...
@@ -372,7 +372,7 @@ bool simExecuteReturnCmd(SScript *script, char *option) {
sprintf
(
script
->
error
,
"lineNum:%d. error return %s"
,
script
->
lines
[
script
->
linePos
].
lineNum
,
option
);
sprintf
(
script
->
error
,
"lineNum:%d. error return %s"
,
script
->
lines
[
script
->
linePos
].
lineNum
,
option
);
return
false
;
return
false
;
}
else
{
}
else
{
sim
Print
(
"script:%s, return cmd execute with:%d"
,
script
->
fileName
,
ret
);
sim
Info
(
"script:%s, return cmd execute with:%d"
,
script
->
fileName
,
ret
);
script
->
linePos
=
script
->
numOfLines
;
script
->
linePos
=
script
->
numOfLines
;
}
}
...
@@ -418,7 +418,7 @@ void simCloseRestFulConnect(SScript *script) {
...
@@ -418,7 +418,7 @@ void simCloseRestFulConnect(SScript *script) {
void
simCloseNativeConnect
(
SScript
*
script
)
{
void
simCloseNativeConnect
(
SScript
*
script
)
{
if
(
script
->
taos
==
NULL
)
return
;
if
(
script
->
taos
==
NULL
)
return
;
sim
Trace
(
"script:%s, taos:%p closed"
,
script
->
fileName
,
script
->
taos
);
sim
Debug
(
"script:%s, taos:%p closed"
,
script
->
fileName
,
script
->
taos
);
taos_close
(
script
->
taos
);
taos_close
(
script
->
taos
);
taosMsleep
(
1200
);
taosMsleep
(
1200
);
...
@@ -468,7 +468,7 @@ int simParseHttpCommandResult(SScript *script, char *command) {
...
@@ -468,7 +468,7 @@ int simParseHttpCommandResult(SScript *script, char *command) {
cJSON_Delete
(
root
);
cJSON_Delete
(
root
);
return
retcode
;
return
retcode
;
}
else
{
}
else
{
sim
Trace
(
"script:%s, json:status:%s not equal to succ, but code is %d, response:%s"
,
script
->
fileName
,
sim
Debug
(
"script:%s, json:status:%s not equal to succ, but code is %d, response:%s"
,
script
->
fileName
,
status
->
valuestring
,
retcode
,
command
);
status
->
valuestring
,
retcode
,
command
);
cJSON_Delete
(
root
);
cJSON_Delete
(
root
);
return
0
;
return
0
;
...
@@ -568,10 +568,10 @@ bool simCreateRestFulConnect(SScript *script, char *user, char *pass) {
...
@@ -568,10 +568,10 @@ bool simCreateRestFulConnect(SScript *script, char *user, char *pass) {
for
(
int
attempt
=
0
;
attempt
<
10
;
++
attempt
)
{
for
(
int
attempt
=
0
;
attempt
<
10
;
++
attempt
)
{
success
=
simExecuteRestFulCommand
(
script
,
command
)
==
0
;
success
=
simExecuteRestFulCommand
(
script
,
command
)
==
0
;
if
(
!
success
)
{
if
(
!
success
)
{
sim
Trace
(
"script:%s, user:%s connect taosd failed:%s, attempt:%d"
,
script
->
fileName
,
user
,
taos_errstr
(
NULL
),
attempt
);
sim
Debug
(
"script:%s, user:%s connect taosd failed:%s, attempt:%d"
,
script
->
fileName
,
user
,
taos_errstr
(
NULL
),
attempt
);
taosMsleep
(
1000
);
taosMsleep
(
1000
);
}
else
{
}
else
{
sim
Trace
(
"script:%s, user:%s connect taosd successed, attempt:%d"
,
script
->
fileName
,
user
,
attempt
);
sim
Debug
(
"script:%s, user:%s connect taosd successed, attempt:%d"
,
script
->
fileName
,
user
,
attempt
);
break
;
break
;
}
}
}
}
...
@@ -581,7 +581,7 @@ bool simCreateRestFulConnect(SScript *script, char *user, char *pass) {
...
@@ -581,7 +581,7 @@ bool simCreateRestFulConnect(SScript *script, char *user, char *pass) {
return
false
;
return
false
;
}
}
sim
Trace
(
"script:%s, connect taosd successed, auth:%p"
,
script
->
fileName
,
script
->
auth
);
sim
Debug
(
"script:%s, connect taosd successed, auth:%p"
,
script
->
fileName
,
script
->
auth
);
return
true
;
return
true
;
}
}
...
@@ -592,10 +592,10 @@ bool simCreateNativeConnect(SScript *script, char *user, char *pass) {
...
@@ -592,10 +592,10 @@ bool simCreateNativeConnect(SScript *script, char *user, char *pass) {
for
(
int
attempt
=
0
;
attempt
<
10
;
++
attempt
)
{
for
(
int
attempt
=
0
;
attempt
<
10
;
++
attempt
)
{
taos
=
taos_connect
(
NULL
,
user
,
pass
,
NULL
,
tsDnodeShellPort
);
taos
=
taos_connect
(
NULL
,
user
,
pass
,
NULL
,
tsDnodeShellPort
);
if
(
taos
==
NULL
)
{
if
(
taos
==
NULL
)
{
sim
Trace
(
"script:%s, user:%s connect taosd failed:%s, attempt:%d"
,
script
->
fileName
,
user
,
taos_errstr
(
NULL
),
attempt
);
sim
Debug
(
"script:%s, user:%s connect taosd failed:%s, attempt:%d"
,
script
->
fileName
,
user
,
taos_errstr
(
NULL
),
attempt
);
taosMsleep
(
1000
);
taosMsleep
(
1000
);
}
else
{
}
else
{
sim
Trace
(
"script:%s, user:%s connect taosd successed, attempt:%d"
,
script
->
fileName
,
user
,
attempt
);
sim
Debug
(
"script:%s, user:%s connect taosd successed, attempt:%d"
,
script
->
fileName
,
user
,
attempt
);
break
;
break
;
}
}
}
}
...
@@ -606,7 +606,7 @@ bool simCreateNativeConnect(SScript *script, char *user, char *pass) {
...
@@ -606,7 +606,7 @@ bool simCreateNativeConnect(SScript *script, char *user, char *pass) {
}
}
script
->
taos
=
taos
;
script
->
taos
=
taos
;
sim
Trace
(
"script:%s, connect taosd successed, taos:%p"
,
script
->
fileName
,
taos
);
sim
Debug
(
"script:%s, connect taosd successed, taos:%p"
,
script
->
fileName
,
taos
);
return
true
;
return
true
;
}
}
...
@@ -643,11 +643,11 @@ bool simExecuteNativeSqlCommand(SScript *script, char *rest, bool isSlow) {
...
@@ -643,11 +643,11 @@ bool simExecuteNativeSqlCommand(SScript *script, char *rest, bool isSlow) {
ret
=
taos_errno
(
pSql
);
ret
=
taos_errno
(
pSql
);
if
(
ret
==
TSDB_CODE_MND_TABLE_ALREADY_EXIST
||
ret
==
TSDB_CODE_MND_DB_ALREADY_EXIST
)
{
if
(
ret
==
TSDB_CODE_MND_TABLE_ALREADY_EXIST
||
ret
==
TSDB_CODE_MND_DB_ALREADY_EXIST
)
{
sim
Trace
(
"script:%s, taos:%p, %s success, ret:%d:%s"
,
script
->
fileName
,
script
->
taos
,
rest
,
ret
,
tstrerror
(
ret
));
sim
Debug
(
"script:%s, taos:%p, %s success, ret:%d:%s"
,
script
->
fileName
,
script
->
taos
,
rest
,
ret
,
tstrerror
(
ret
));
ret
=
0
;
ret
=
0
;
break
;
break
;
}
else
if
(
ret
!=
0
)
{
}
else
if
(
ret
!=
0
)
{
sim
Trace
(
"script:%s, taos:%p, %s failed, ret:%d:%s, error:%s"
,
sim
Debug
(
"script:%s, taos:%p, %s failed, ret:%d:%s, error:%s"
,
script
->
fileName
,
script
->
taos
,
rest
,
ret
,
tstrerror
(
ret
),
taos_errstr
(
pSql
));
script
->
fileName
,
script
->
taos
,
rest
,
ret
,
tstrerror
(
ret
),
taos_errstr
(
pSql
));
if
(
line
->
errorJump
==
SQL_JUMP_TRUE
)
{
if
(
line
->
errorJump
==
SQL_JUMP_TRUE
)
{
...
@@ -672,7 +672,7 @@ bool simExecuteNativeSqlCommand(SScript *script, char *rest, bool isSlow) {
...
@@ -672,7 +672,7 @@ bool simExecuteNativeSqlCommand(SScript *script, char *rest, bool isSlow) {
int
num_fields
=
taos_field_count
(
pSql
);
int
num_fields
=
taos_field_count
(
pSql
);
if
(
num_fields
!=
0
)
{
if
(
num_fields
!=
0
)
{
if
(
pSql
==
NULL
)
{
if
(
pSql
==
NULL
)
{
sim
Trace
(
"script:%s, taos:%p, %s failed, result is null"
,
script
->
fileName
,
script
->
taos
,
rest
);
sim
Debug
(
"script:%s, taos:%p, %s failed, result is null"
,
script
->
fileName
,
script
->
taos
,
rest
);
if
(
line
->
errorJump
==
SQL_JUMP_TRUE
)
{
if
(
line
->
errorJump
==
SQL_JUMP_TRUE
)
{
script
->
linePos
=
line
->
jump
;
script
->
linePos
=
line
->
jump
;
return
true
;
return
true
;
...
@@ -794,11 +794,11 @@ bool simExecuteRestFulSqlCommand(SScript *script, char *rest) {
...
@@ -794,11 +794,11 @@ bool simExecuteRestFulSqlCommand(SScript *script, char *rest) {
ret
=
simExecuteRestFulCommand
(
script
,
command
);
ret
=
simExecuteRestFulCommand
(
script
,
command
);
if
(
ret
==
TSDB_CODE_MND_TABLE_ALREADY_EXIST
||
if
(
ret
==
TSDB_CODE_MND_TABLE_ALREADY_EXIST
||
ret
==
TSDB_CODE_MND_DB_ALREADY_EXIST
)
{
ret
==
TSDB_CODE_MND_DB_ALREADY_EXIST
)
{
sim
Trace
(
"script:%s, taos:%p, %s success, ret:%d:%s"
,
script
->
fileName
,
script
->
taos
,
rest
,
ret
,
tstrerror
(
ret
));
sim
Debug
(
"script:%s, taos:%p, %s success, ret:%d:%s"
,
script
->
fileName
,
script
->
taos
,
rest
,
ret
,
tstrerror
(
ret
));
ret
=
0
;
ret
=
0
;
break
;
break
;
}
else
if
(
ret
!=
0
)
{
}
else
if
(
ret
!=
0
)
{
sim
Trace
(
"script:%s, taos:%p, %s failed, ret:%d"
,
sim
Debug
(
"script:%s, taos:%p, %s failed, ret:%d"
,
script
->
fileName
,
script
->
taos
,
rest
,
ret
);
script
->
fileName
,
script
->
taos
,
rest
,
ret
);
if
(
line
->
errorJump
==
SQL_JUMP_TRUE
)
{
if
(
line
->
errorJump
==
SQL_JUMP_TRUE
)
{
...
@@ -827,7 +827,7 @@ bool simExecuteSqlImpCmd(SScript *script, char *rest, bool isSlow) {
...
@@ -827,7 +827,7 @@ bool simExecuteSqlImpCmd(SScript *script, char *rest, bool isSlow) {
simVisuallizeOption
(
script
,
rest
,
buf
);
simVisuallizeOption
(
script
,
rest
,
buf
);
rest
=
buf
;
rest
=
buf
;
sim
Trace
(
"script:%s, exec:%s"
,
script
->
fileName
,
rest
);
sim
Debug
(
"script:%s, exec:%s"
,
script
->
fileName
,
rest
);
strcpy
(
script
->
rows
,
"-1"
);
strcpy
(
script
->
rows
,
"-1"
);
for
(
int
row
=
0
;
row
<
MAX_QUERY_ROW_NUM
;
++
row
)
{
for
(
int
row
=
0
;
row
<
MAX_QUERY_ROW_NUM
;
++
row
)
{
for
(
int
col
=
0
;
col
<
MAX_QUERY_COL_NUM
;
++
col
)
{
for
(
int
col
=
0
;
col
<
MAX_QUERY_COL_NUM
;
++
col
)
{
...
@@ -883,7 +883,7 @@ bool simExecuteSqlErrorCmd(SScript *script, char *rest) {
...
@@ -883,7 +883,7 @@ bool simExecuteSqlErrorCmd(SScript *script, char *rest) {
simVisuallizeOption
(
script
,
rest
,
buf
);
simVisuallizeOption
(
script
,
rest
,
buf
);
rest
=
buf
;
rest
=
buf
;
sim
Trace
(
"script:%s, exec:%s"
,
script
->
fileName
,
rest
);
sim
Debug
(
"script:%s, exec:%s"
,
script
->
fileName
,
rest
);
strcpy
(
script
->
rows
,
"-1"
);
strcpy
(
script
->
rows
,
"-1"
);
for
(
int
row
=
0
;
row
<
MAX_QUERY_ROW_NUM
;
++
row
)
{
for
(
int
row
=
0
;
row
<
MAX_QUERY_ROW_NUM
;
++
row
)
{
for
(
int
col
=
0
;
col
<
MAX_QUERY_COL_NUM
;
++
col
)
{
for
(
int
col
=
0
;
col
<
MAX_QUERY_COL_NUM
;
++
col
)
{
...
@@ -929,7 +929,7 @@ bool simExecuteSqlErrorCmd(SScript *script, char *rest) {
...
@@ -929,7 +929,7 @@ bool simExecuteSqlErrorCmd(SScript *script, char *rest) {
}
}
if
(
ret
!=
TSDB_CODE_SUCCESS
)
{
if
(
ret
!=
TSDB_CODE_SUCCESS
)
{
sim
Trace
(
"script:%s, taos:%p, %s execute, expect failed, so success, ret:%d:%s"
,
sim
Debug
(
"script:%s, taos:%p, %s execute, expect failed, so success, ret:%d:%s"
,
script
->
fileName
,
script
->
taos
,
rest
,
ret
,
tstrerror
(
ret
));
script
->
fileName
,
script
->
taos
,
rest
,
ret
,
tstrerror
(
ret
));
script
->
linePos
++
;
script
->
linePos
++
;
return
true
;
return
true
;
...
...
tests/tsim/src/simMain.c
浏览文件 @
a45f3dd6
...
@@ -49,7 +49,7 @@ int main(int argc, char *argv[]) {
...
@@ -49,7 +49,7 @@ int main(int argc, char *argv[]) {
exit
(
1
);
exit
(
1
);
}
}
sim
Print
(
"simulator is running ..."
);
sim
Info
(
"simulator is running ..."
);
signal
(
SIGINT
,
simHandleSignal
);
signal
(
SIGINT
,
simHandleSignal
);
SScript
*
script
=
simParseScript
(
scriptFile
);
SScript
*
script
=
simParseScript
(
scriptFile
);
...
...
tests/tsim/src/simSystem.c
浏览文件 @
a45f3dd6
...
@@ -71,7 +71,7 @@ char *simParseHostName(char *varName) {
...
@@ -71,7 +71,7 @@ char *simParseHostName(char *varName) {
}
}
sprintf
(
hostName
,
"'%s:%d'"
,
simHostName
,
port
);
sprintf
(
hostName
,
"'%s:%d'"
,
simHostName
,
port
);
//sim
Print
("hostName:%s", hostName);
//sim
Info
("hostName:%s", hostName);
return
hostName
;
return
hostName
;
}
}
...
@@ -102,20 +102,20 @@ void simFreeScript(SScript *script) {
...
@@ -102,20 +102,20 @@ void simFreeScript(SScript *script) {
SScript
*
simProcessCallOver
(
SScript
*
script
)
{
SScript
*
simProcessCallOver
(
SScript
*
script
)
{
if
(
script
->
type
==
SIM_SCRIPT_TYPE_MAIN
)
{
if
(
script
->
type
==
SIM_SCRIPT_TYPE_MAIN
)
{
if
(
script
->
killed
)
{
if
(
script
->
killed
)
{
sim
Print
(
"script:"
FAILED_PREFIX
"%s"
FAILED_POSTFIX
", "
FAILED_PREFIX
sim
Info
(
"script:"
FAILED_PREFIX
"%s"
FAILED_POSTFIX
", "
FAILED_PREFIX
"failed"
FAILED_POSTFIX
", error:%s"
,
"failed"
FAILED_POSTFIX
", error:%s"
,
script
->
fileName
,
script
->
error
);
script
->
fileName
,
script
->
error
);
exit
(
-
1
);
exit
(
-
1
);
}
else
{
}
else
{
sim
Print
(
"script:"
SUCCESS_PREFIX
"%s"
SUCCESS_POSTFIX
", "
SUCCESS_PREFIX
sim
Info
(
"script:"
SUCCESS_PREFIX
"%s"
SUCCESS_POSTFIX
", "
SUCCESS_PREFIX
"success"
SUCCESS_POSTFIX
,
"success"
SUCCESS_POSTFIX
,
script
->
fileName
);
script
->
fileName
);
simCloseTaosdConnect
(
script
);
simCloseTaosdConnect
(
script
);
simScriptSucced
++
;
simScriptSucced
++
;
simScriptPos
--
;
simScriptPos
--
;
if
(
simScriptPos
==
-
1
)
{
if
(
simScriptPos
==
-
1
)
{
sim
Print
(
"----------------------------------------------------------------------"
);
sim
Info
(
"----------------------------------------------------------------------"
);
sim
Print
(
"Simulation Test Done, "
SUCCESS_PREFIX
"%d"
SUCCESS_POSTFIX
" Passed:
\n
"
,
simScriptSucced
);
sim
Info
(
"Simulation Test Done, "
SUCCESS_PREFIX
"%d"
SUCCESS_POSTFIX
" Passed:
\n
"
,
simScriptSucced
);
exit
(
0
);
exit
(
0
);
}
}
...
@@ -123,7 +123,7 @@ SScript *simProcessCallOver(SScript *script) {
...
@@ -123,7 +123,7 @@ SScript *simProcessCallOver(SScript *script) {
return
simScriptList
[
simScriptPos
];
return
simScriptList
[
simScriptPos
];
}
}
}
else
{
}
else
{
sim
Print
(
"script:%s, is stopped by main script"
,
script
->
fileName
);
sim
Info
(
"script:%s, is stopped by main script"
,
script
->
fileName
);
simFreeScript
(
script
);
simFreeScript
(
script
);
return
NULL
;
return
NULL
;
}
}
...
@@ -143,7 +143,7 @@ void *simExecuteScript(void *inputScript) {
...
@@ -143,7 +143,7 @@ void *simExecuteScript(void *inputScript) {
}
else
{
}
else
{
SCmdLine
*
line
=
&
script
->
lines
[
script
->
linePos
];
SCmdLine
*
line
=
&
script
->
lines
[
script
->
linePos
];
char
*
option
=
script
->
optionBuffer
+
line
->
optionOffset
;
char
*
option
=
script
->
optionBuffer
+
line
->
optionOffset
;
sim
Trace
(
"script:%s, line:%d with option
\"
%s
\"
"
,
script
->
fileName
,
line
->
lineNum
,
option
);
sim
Debug
(
"script:%s, line:%d with option
\"
%s
\"
"
,
script
->
fileName
,
line
->
lineNum
,
option
);
SCommand
*
cmd
=
&
simCmdList
[
line
->
cmdno
];
SCommand
*
cmd
=
&
simCmdList
[
line
->
cmdno
];
int
ret
=
(
*
(
cmd
->
executeCmd
))(
script
,
option
);
int
ret
=
(
*
(
cmd
->
executeCmd
))(
script
,
option
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录