Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
eaebd86e
T
TDengine
项目概览
taosdata
/
TDengine
大约 2 年 前同步成功
通知
1192
Star
22018
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看板
未验证
提交
eaebd86e
编写于
4月 18, 2022
作者:
S
Shengliang Guan
提交者:
GitHub
4月 18, 2022
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #11594 from taosdata/fix/tsim
enh: support variables like $data[0][1] and $data(db)[0] in tsim scripts
上级
865bc40d
5ca1f792
变更
10
隐藏空白更改
内联
并排
Showing
10 changed file
with
110 addition
and
48 deletion
+110
-48
source/dnode/mgmt/mgmt_mnode/src/mmFile.c
source/dnode/mgmt/mgmt_mnode/src/mmFile.c
+1
-1
source/dnode/mnode/impl/src/mndBnode.c
source/dnode/mnode/impl/src/mndBnode.c
+5
-5
source/dnode/mnode/impl/src/mndMnode.c
source/dnode/mnode/impl/src/mndMnode.c
+5
-5
source/dnode/mnode/impl/src/mndQnode.c
source/dnode/mnode/impl/src/mndQnode.c
+4
-4
source/dnode/mnode/impl/src/mndSnode.c
source/dnode/mnode/impl/src/mndSnode.c
+4
-4
tests/script/tsim/db/alter_option.sim
tests/script/tsim/db/alter_option.sim
+1
-1
tests/script/tsim/db/basic6.sim
tests/script/tsim/db/basic6.sim
+0
-1
tests/script/tsim/user/basic1.sim
tests/script/tsim/user/basic1.sim
+19
-19
tests/tsim/inc/simInt.h
tests/tsim/inc/simInt.h
+3
-3
tests/tsim/src/simExe.c
tests/tsim/src/simExe.c
+68
-5
未找到文件。
source/dnode/mgmt/mgmt_mnode/src/mmFile.c
浏览文件 @
eaebd86e
...
@@ -121,7 +121,7 @@ int32_t mmWriteFile(SMgmtWrapper *pWrapper, SDCreateMnodeReq *pReq, bool deploye
...
@@ -121,7 +121,7 @@ int32_t mmWriteFile(SMgmtWrapper *pWrapper, SDCreateMnodeReq *pReq, bool deploye
int32_t
len
=
0
;
int32_t
len
=
0
;
int32_t
maxLen
=
4096
;
int32_t
maxLen
=
4096
;
char
*
content
=
taosMemoryCalloc
(
1
,
maxLen
+
1
);
char
*
content
=
taosMemoryCalloc
(
1
,
maxLen
+
1
);
len
+=
snprintf
(
content
+
len
,
maxLen
-
len
,
"{
\n
"
);
len
+=
snprintf
(
content
+
len
,
maxLen
-
len
,
"{
\n
"
);
len
+=
snprintf
(
content
+
len
,
maxLen
-
len
,
"
\"
mnodes
\"
: [{
\n
"
);
len
+=
snprintf
(
content
+
len
,
maxLen
-
len
,
"
\"
mnodes
\"
: [{
\n
"
);
...
...
source/dnode/mnode/impl/src/mndBnode.c
浏览文件 @
eaebd86e
...
@@ -33,7 +33,7 @@ static int32_t mndProcessCreateBnodeReq(SNodeMsg *pReq);
...
@@ -33,7 +33,7 @@ static int32_t mndProcessCreateBnodeReq(SNodeMsg *pReq);
static
int32_t
mndProcessCreateBnodeRsp
(
SNodeMsg
*
pRsp
);
static
int32_t
mndProcessCreateBnodeRsp
(
SNodeMsg
*
pRsp
);
static
int32_t
mndProcessDropBnodeReq
(
SNodeMsg
*
pReq
);
static
int32_t
mndProcessDropBnodeReq
(
SNodeMsg
*
pReq
);
static
int32_t
mndProcessDropBnodeRsp
(
SNodeMsg
*
pRsp
);
static
int32_t
mndProcessDropBnodeRsp
(
SNodeMsg
*
pRsp
);
static
int32_t
mndRetrieveBnodes
(
SNodeMsg
*
pReq
,
SShowObj
*
pShow
,
SSDataBlock
*
pBlock
,
int32_t
rows
);
static
int32_t
mndRetrieveBnodes
(
SNodeMsg
*
pReq
,
SShowObj
*
pShow
,
SSDataBlock
*
pBlock
,
int32_t
rows
);
static
void
mndCancelGetNextBnode
(
SMnode
*
pMnode
,
void
*
pIter
);
static
void
mndCancelGetNextBnode
(
SMnode
*
pMnode
,
void
*
pIter
);
int32_t
mndInitBnode
(
SMnode
*
pMnode
)
{
int32_t
mndInitBnode
(
SMnode
*
pMnode
)
{
...
@@ -437,7 +437,7 @@ static int32_t mndProcessDropBnodeRsp(SNodeMsg *pRsp) {
...
@@ -437,7 +437,7 @@ static int32_t mndProcessDropBnodeRsp(SNodeMsg *pRsp) {
return
0
;
return
0
;
}
}
static
int32_t
mndRetrieveBnodes
(
SNodeMsg
*
pReq
,
SShowObj
*
pShow
,
SSDataBlock
*
pBlock
,
int32_t
rows
)
{
static
int32_t
mndRetrieveBnodes
(
SNodeMsg
*
pReq
,
SShowObj
*
pShow
,
SSDataBlock
*
pBlock
,
int32_t
rows
)
{
SMnode
*
pMnode
=
pReq
->
pNode
;
SMnode
*
pMnode
=
pReq
->
pNode
;
SSdb
*
pSdb
=
pMnode
->
pSdb
;
SSdb
*
pSdb
=
pMnode
->
pSdb
;
int32_t
numOfRows
=
0
;
int32_t
numOfRows
=
0
;
...
@@ -449,8 +449,8 @@ static int32_t mndRetrieveBnodes(SNodeMsg *pReq, SShowObj *pShow, SSDataBlock* p
...
@@ -449,8 +449,8 @@ static int32_t mndRetrieveBnodes(SNodeMsg *pReq, SShowObj *pShow, SSDataBlock* p
if
(
pShow
->
pIter
==
NULL
)
break
;
if
(
pShow
->
pIter
==
NULL
)
break
;
cols
=
0
;
cols
=
0
;
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colDataAppend
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pObj
->
id
,
false
);
colDataAppend
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pObj
->
id
,
false
);
char
buf
[
TSDB_EP_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
buf
[
TSDB_EP_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
buf
,
pObj
->
pDnode
->
ep
,
pShow
->
bytes
[
cols
]);
STR_WITH_MAXSIZE_TO_VARSTR
(
buf
,
pObj
->
pDnode
->
ep
,
pShow
->
bytes
[
cols
]);
...
@@ -459,7 +459,7 @@ static int32_t mndRetrieveBnodes(SNodeMsg *pReq, SShowObj *pShow, SSDataBlock* p
...
@@ -459,7 +459,7 @@ static int32_t mndRetrieveBnodes(SNodeMsg *pReq, SShowObj *pShow, SSDataBlock* p
colDataAppend
(
pColInfo
,
numOfRows
,
buf
,
false
);
colDataAppend
(
pColInfo
,
numOfRows
,
buf
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colDataAppend
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pObj
->
createdTime
,
false
);
colDataAppend
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pObj
->
createdTime
,
false
);
numOfRows
++
;
numOfRows
++
;
sdbRelease
(
pSdb
,
pObj
);
sdbRelease
(
pSdb
,
pObj
);
...
...
source/dnode/mnode/impl/src/mndMnode.c
浏览文件 @
eaebd86e
...
@@ -615,7 +615,7 @@ static int32_t mndProcessDropMnodeRsp(SNodeMsg *pRsp) {
...
@@ -615,7 +615,7 @@ static int32_t mndProcessDropMnodeRsp(SNodeMsg *pRsp) {
return
0
;
return
0
;
}
}
static
int32_t
mndRetrieveMnodes
(
SNodeMsg
*
pReq
,
SShowObj
*
pShow
,
SSDataBlock
*
pBlock
,
int32_t
rows
)
{
static
int32_t
mndRetrieveMnodes
(
SNodeMsg
*
pReq
,
SShowObj
*
pShow
,
SSDataBlock
*
pBlock
,
int32_t
rows
)
{
SMnode
*
pMnode
=
pReq
->
pNode
;
SMnode
*
pMnode
=
pReq
->
pNode
;
SSdb
*
pSdb
=
pMnode
->
pSdb
;
SSdb
*
pSdb
=
pMnode
->
pSdb
;
int32_t
numOfRows
=
0
;
int32_t
numOfRows
=
0
;
...
@@ -628,8 +628,8 @@ static int32_t mndRetrieveMnodes(SNodeMsg *pReq, SShowObj *pShow, SSDataBlock* p
...
@@ -628,8 +628,8 @@ static int32_t mndRetrieveMnodes(SNodeMsg *pReq, SShowObj *pShow, SSDataBlock* p
if
(
pShow
->
pIter
==
NULL
)
break
;
if
(
pShow
->
pIter
==
NULL
)
break
;
cols
=
0
;
cols
=
0
;
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colDataAppend
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pObj
->
id
,
false
);
colDataAppend
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pObj
->
id
,
false
);
char
b1
[
TSDB_EP_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
b1
[
TSDB_EP_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
b1
,
pObj
->
pDnode
->
ep
,
pShow
->
bytes
[
cols
]);
STR_WITH_MAXSIZE_TO_VARSTR
(
b1
,
pObj
->
pDnode
->
ep
,
pShow
->
bytes
[
cols
]);
...
@@ -638,11 +638,11 @@ static int32_t mndRetrieveMnodes(SNodeMsg *pReq, SShowObj *pShow, SSDataBlock* p
...
@@ -638,11 +638,11 @@ static int32_t mndRetrieveMnodes(SNodeMsg *pReq, SShowObj *pShow, SSDataBlock* p
colDataAppend
(
pColInfo
,
numOfRows
,
b1
,
false
);
colDataAppend
(
pColInfo
,
numOfRows
,
b1
,
false
);
const
char
*
roles
=
mndGetRoleStr
(
pObj
->
role
);
const
char
*
roles
=
mndGetRoleStr
(
pObj
->
role
);
char
*
b2
=
taosMemoryCalloc
(
1
,
strlen
(
roles
)
+
VARSTR_HEADER_SIZE
);
char
*
b2
=
taosMemoryCalloc
(
1
,
strlen
(
roles
)
+
VARSTR_HEADER_SIZE
);
STR_WITH_MAXSIZE_TO_VARSTR
(
b2
,
roles
,
pShow
->
bytes
[
cols
]);
STR_WITH_MAXSIZE_TO_VARSTR
(
b2
,
roles
,
pShow
->
bytes
[
cols
]);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colDataAppend
(
pColInfo
,
numOfRows
,
(
const
char
*
)
b2
,
false
);
colDataAppend
(
pColInfo
,
numOfRows
,
(
const
char
*
)
b2
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colDataAppend
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pObj
->
roleTime
,
false
);
colDataAppend
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pObj
->
roleTime
,
false
);
...
...
source/dnode/mnode/impl/src/mndQnode.c
浏览文件 @
eaebd86e
...
@@ -34,7 +34,7 @@ static int32_t mndProcessCreateQnodeRsp(SNodeMsg *pRsp);
...
@@ -34,7 +34,7 @@ static int32_t mndProcessCreateQnodeRsp(SNodeMsg *pRsp);
static
int32_t
mndProcessDropQnodeReq
(
SNodeMsg
*
pReq
);
static
int32_t
mndProcessDropQnodeReq
(
SNodeMsg
*
pReq
);
static
int32_t
mndProcessDropQnodeRsp
(
SNodeMsg
*
pRsp
);
static
int32_t
mndProcessDropQnodeRsp
(
SNodeMsg
*
pRsp
);
static
int32_t
mndProcessQnodeListReq
(
SNodeMsg
*
pReq
);
static
int32_t
mndProcessQnodeListReq
(
SNodeMsg
*
pReq
);
static
int32_t
mndRetrieveQnodes
(
SNodeMsg
*
pReq
,
SShowObj
*
pShow
,
SSDataBlock
*
pBlock
,
int32_t
rows
);
static
int32_t
mndRetrieveQnodes
(
SNodeMsg
*
pReq
,
SShowObj
*
pShow
,
SSDataBlock
*
pBlock
,
int32_t
rows
);
static
void
mndCancelGetNextQnode
(
SMnode
*
pMnode
,
void
*
pIter
);
static
void
mndCancelGetNextQnode
(
SMnode
*
pMnode
,
void
*
pIter
);
int32_t
mndInitQnode
(
SMnode
*
pMnode
)
{
int32_t
mndInitQnode
(
SMnode
*
pMnode
)
{
...
@@ -497,7 +497,7 @@ static int32_t mndProcessDropQnodeRsp(SNodeMsg *pRsp) {
...
@@ -497,7 +497,7 @@ static int32_t mndProcessDropQnodeRsp(SNodeMsg *pRsp) {
return
0
;
return
0
;
}
}
static
int32_t
mndRetrieveQnodes
(
SNodeMsg
*
pReq
,
SShowObj
*
pShow
,
SSDataBlock
*
pBlock
,
int32_t
rows
)
{
static
int32_t
mndRetrieveQnodes
(
SNodeMsg
*
pReq
,
SShowObj
*
pShow
,
SSDataBlock
*
pBlock
,
int32_t
rows
)
{
SMnode
*
pMnode
=
pReq
->
pNode
;
SMnode
*
pMnode
=
pReq
->
pNode
;
SSdb
*
pSdb
=
pMnode
->
pSdb
;
SSdb
*
pSdb
=
pMnode
->
pSdb
;
int32_t
numOfRows
=
0
;
int32_t
numOfRows
=
0
;
...
@@ -510,8 +510,8 @@ static int32_t mndRetrieveQnodes(SNodeMsg *pReq, SShowObj *pShow, SSDataBlock* p
...
@@ -510,8 +510,8 @@ static int32_t mndRetrieveQnodes(SNodeMsg *pReq, SShowObj *pShow, SSDataBlock* p
if
(
pShow
->
pIter
==
NULL
)
break
;
if
(
pShow
->
pIter
==
NULL
)
break
;
cols
=
0
;
cols
=
0
;
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colDataAppend
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pObj
->
id
,
false
);
colDataAppend
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pObj
->
id
,
false
);
char
ep
[
TSDB_EP_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
ep
[
TSDB_EP_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
ep
,
pObj
->
pDnode
->
ep
,
pShow
->
bytes
[
cols
]);
STR_WITH_MAXSIZE_TO_VARSTR
(
ep
,
pObj
->
pDnode
->
ep
,
pShow
->
bytes
[
cols
]);
...
...
source/dnode/mnode/impl/src/mndSnode.c
浏览文件 @
eaebd86e
...
@@ -33,7 +33,7 @@ static int32_t mndProcessCreateSnodeReq(SNodeMsg *pReq);
...
@@ -33,7 +33,7 @@ static int32_t mndProcessCreateSnodeReq(SNodeMsg *pReq);
static
int32_t
mndProcessCreateSnodeRsp
(
SNodeMsg
*
pRsp
);
static
int32_t
mndProcessCreateSnodeRsp
(
SNodeMsg
*
pRsp
);
static
int32_t
mndProcessDropSnodeReq
(
SNodeMsg
*
pReq
);
static
int32_t
mndProcessDropSnodeReq
(
SNodeMsg
*
pReq
);
static
int32_t
mndProcessDropSnodeRsp
(
SNodeMsg
*
pRsp
);
static
int32_t
mndProcessDropSnodeRsp
(
SNodeMsg
*
pRsp
);
static
int32_t
mndRetrieveSnodes
(
SNodeMsg
*
pReq
,
SShowObj
*
pShow
,
SSDataBlock
*
pBlock
,
int32_t
rows
);
static
int32_t
mndRetrieveSnodes
(
SNodeMsg
*
pReq
,
SShowObj
*
pShow
,
SSDataBlock
*
pBlock
,
int32_t
rows
);
static
void
mndCancelGetNextSnode
(
SMnode
*
pMnode
,
void
*
pIter
);
static
void
mndCancelGetNextSnode
(
SMnode
*
pMnode
,
void
*
pIter
);
int32_t
mndInitSnode
(
SMnode
*
pMnode
)
{
int32_t
mndInitSnode
(
SMnode
*
pMnode
)
{
...
@@ -447,7 +447,7 @@ static int32_t mndProcessDropSnodeRsp(SNodeMsg *pRsp) {
...
@@ -447,7 +447,7 @@ static int32_t mndProcessDropSnodeRsp(SNodeMsg *pRsp) {
return
0
;
return
0
;
}
}
static
int32_t
mndRetrieveSnodes
(
SNodeMsg
*
pReq
,
SShowObj
*
pShow
,
SSDataBlock
*
pBlock
,
int32_t
rows
)
{
static
int32_t
mndRetrieveSnodes
(
SNodeMsg
*
pReq
,
SShowObj
*
pShow
,
SSDataBlock
*
pBlock
,
int32_t
rows
)
{
SMnode
*
pMnode
=
pReq
->
pNode
;
SMnode
*
pMnode
=
pReq
->
pNode
;
SSdb
*
pSdb
=
pMnode
->
pSdb
;
SSdb
*
pSdb
=
pMnode
->
pSdb
;
int32_t
numOfRows
=
0
;
int32_t
numOfRows
=
0
;
...
@@ -459,8 +459,8 @@ static int32_t mndRetrieveSnodes(SNodeMsg *pReq, SShowObj *pShow, SSDataBlock* p
...
@@ -459,8 +459,8 @@ static int32_t mndRetrieveSnodes(SNodeMsg *pReq, SShowObj *pShow, SSDataBlock* p
if
(
pShow
->
pIter
==
NULL
)
break
;
if
(
pShow
->
pIter
==
NULL
)
break
;
cols
=
0
;
cols
=
0
;
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colDataAppend
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pObj
->
id
,
false
);
colDataAppend
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pObj
->
id
,
false
);
char
ep
[
TSDB_EP_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
ep
[
TSDB_EP_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
ep
,
pObj
->
pDnode
->
ep
,
pShow
->
bytes
[
cols
]);
STR_WITH_MAXSIZE_TO_VARSTR
(
ep
,
pObj
->
pDnode
->
ep
,
pShow
->
bytes
[
cols
]);
...
...
tests/script/tsim/db/alter_option.sim
浏览文件 @
eaebd86e
...
@@ -72,7 +72,7 @@ print rows: $rows
...
@@ -72,7 +72,7 @@ print rows: $rows
print $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
print $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
print $data10 $data11 $data12 $data13 $data14 $data15 $data16 $data17 $data18 $data19
print $data10 $data11 $data12 $data13 $data14 $data15 $data16 $data17 $data18 $data19
print ====> dataX_db
print ====> dataX_db
print $data
0_db $data1_db
$data2_db $data3_db $data4_db $data5_db $data6_db $data7_db $data8_db $data9_db $data10_db $data11_db $data12_db $data13_db $data14_db $data15_db $data16_db $data17_db
print $data
(db)[0] $data(db)[1]
$data2_db $data3_db $data4_db $data5_db $data6_db $data7_db $data8_db $data9_db $data10_db $data11_db $data12_db $data13_db $data14_db $data15_db $data16_db $data17_db
if $rows != 3 then
if $rows != 3 then
return -1
return -1
...
...
tests/script/tsim/db/basic6.sim
浏览文件 @
eaebd86e
...
@@ -17,7 +17,6 @@ print =============== step1
...
@@ -17,7 +17,6 @@ print =============== step1
# quorum presicion
# quorum presicion
sql create database $db vgroups 8 replica 1 days 2880 keep 3650 cache 32 blocks 12 minrows 80 maxrows 10000 wal 2 fsync 1000 comp 0 cachelast 2 precision 'us'
sql create database $db vgroups 8 replica 1 days 2880 keep 3650 cache 32 blocks 12 minrows 80 maxrows 10000 wal 2 fsync 1000 comp 0 cachelast 2 precision 'us'
sql show databases
sql show databases
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1 $data5_1 $data6_1 $data7_1 $data8_1 $data9_1
print $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
print $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
if $rows != 3 then
if $rows != 3 then
...
...
tests/script/tsim/user/basic1.sim
浏览文件 @
eaebd86e
...
@@ -9,9 +9,9 @@ if $rows != 1 then
...
@@ -9,9 +9,9 @@ if $rows != 1 then
return -1
return -1
endi
endi
print $data
00 $data01 $data02
print $data
[0][0] $data[0][1] $data[0][2]
print $data
10 $data11 $data22
print $data
[1][0] $data[1][1] $data[1][2]
print $data
20 $data11 $data22
print $data
[2][0] $data[1][2] $data[2][2]
sql_error show accounts;
sql_error show accounts;
sql_error create account a pass "a"
sql_error create account a pass "a"
...
@@ -25,10 +25,10 @@ if $rows != 2 then
...
@@ -25,10 +25,10 @@ if $rows != 2 then
return -1
return -1
endi
endi
print $data
00 $data01 $data02
print $data
[0][0] $data[0][1] $data[0][2]
print $data
10 $data11 $data12
print $data
[1][0] $data[1][1] $data[1][2]
print $data
20 $data11 $data22
print $data
[2][0] $data[1][2] $data[2][2]
print $data
30 $data31 $data32
print $data
[3][0] $data[3][1] $data[3][2]
print =============== create user2
print =============== create user2
sql create user user2 PASS 'user2'
sql create user user2 PASS 'user2'
...
@@ -37,10 +37,10 @@ if $rows != 3 then
...
@@ -37,10 +37,10 @@ if $rows != 3 then
return -1
return -1
endi
endi
print $data
00 $data01 $data02
print $data
[0][0] $data[0][1] $data[0][2]
print $data
10 $data11 $data12
print $data
[1][0] $data[1][1] $data[1][2]
print $data
20 $data11 $data22
print $data
[2][0] $data[1][2] $data[2][2]
print $data
30 $data31 $data32
print $data
[3][0] $data[3][1] $data[3][2]
print $data40 $data41 $data42
print $data40 $data41 $data42
print =============== drop user1
print =============== drop user1
...
@@ -50,10 +50,10 @@ if $rows != 2 then
...
@@ -50,10 +50,10 @@ if $rows != 2 then
return -1
return -1
endi
endi
print $data
00 $data01 $data02
print $data
[0][0] $data[0][1] $data[0][2]
print $data
10 $data11 $data22
print $data
[1][0] $data[1][1] $data[1][2]
print $data
20 $data11 $data22
print $data
[2][0] $data[1][2] $data[2][2]
print $data
30 $data31 $data32
print $data
[3][0] $data[3][1] $data[3][2]
print =============== restart taosd
print =============== restart taosd
system sh/exec.sh -n dnode1 -s stop
system sh/exec.sh -n dnode1 -s stop
...
@@ -66,9 +66,9 @@ if $rows != 2 then
...
@@ -66,9 +66,9 @@ if $rows != 2 then
return -1
return -1
endi
endi
print $data
00 $data01 $data02
print $data
[0][0] $data[0][1] $data[0][2]
print $data
10 $data11 $data22
print $data
[1][0] $data[1][1] $data[1][2]
print $data
20 $data11 $data22
print $data
[2][0] $data[1][2] $data[2][2]
print $data
30 $data31 $data32
print $data
[3][0] $data[3][1] $data[3][2]
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/exec.sh -n dnode1 -s stop -x SIGINT
tests/tsim/inc/simInt.h
浏览文件 @
eaebd86e
...
@@ -33,9 +33,9 @@
...
@@ -33,9 +33,9 @@
#define MAX_BACKGROUND_SCRIPT_NUM 10
#define MAX_BACKGROUND_SCRIPT_NUM 10
#define MAX_FILE_NAME_LEN 256
#define MAX_FILE_NAME_LEN 256
#define MAX_ERROR_LEN 1024
#define MAX_ERROR_LEN 1024
#define MAX_QUERY_VALUE_LEN 1024
0
#define MAX_QUERY_VALUE_LEN 1024
#define MAX_QUERY_COL_NUM
2
0
#define MAX_QUERY_COL_NUM
10
0
#define MAX_QUERY_ROW_NUM
2
0
#define MAX_QUERY_ROW_NUM
10
0
#define MAX_SYSTEM_RESULT_LEN 2048
#define MAX_SYSTEM_RESULT_LEN 2048
#define MAX_VAR_LEN 100
#define MAX_VAR_LEN 100
#define MAX_VAR_NAME_LEN 32
#define MAX_VAR_NAME_LEN 32
...
...
tests/tsim/src/simExe.c
浏览文件 @
eaebd86e
...
@@ -49,6 +49,41 @@ char *simParseHostName(char *varName) {
...
@@ -49,6 +49,41 @@ char *simParseHostName(char *varName) {
return
hostName
;
return
hostName
;
}
}
static
void
simFindFirstNum
(
const
char
*
begin
,
int32_t
beginLen
,
int32_t
*
num
)
{
if
(
beginLen
<=
5
)
{
*
num
=
0
;
}
else
{
*
num
=
atoi
(
begin
+
5
);
}
}
static
void
simFindSecondNum
(
const
char
*
begin
,
int32_t
beginLen
,
int32_t
*
num
)
{
const
char
*
number
=
strstr
(
begin
,
"]["
);
if
(
number
==
NULL
)
{
*
num
=
0
;
}
else
{
*
num
=
atoi
(
number
+
2
);
}
}
static
void
simFindFirstKeyVal
(
const
char
*
begin
,
int32_t
beginLen
,
char
*
key
,
int32_t
keyLen
)
{
key
[
0
]
=
0
;
for
(
int32_t
i
=
5
;
i
<
beginLen
&&
i
-
5
<
keyLen
;
++
i
)
{
if
(
begin
[
i
]
!=
0
&&
begin
[
i
]
!=
']'
&&
begin
[
i
]
!=
')'
)
{
key
[
i
-
5
]
=
begin
[
i
];
}
}
}
static
void
simFindSecondKeyNum
(
const
char
*
begin
,
int32_t
beginLen
,
int32_t
*
num
)
{
const
char
*
number
=
strstr
(
begin
,
")["
);
if
(
number
==
NULL
)
{
*
num
=
0
;
}
else
{
*
num
=
atoi
(
number
+
2
);
}
}
char
*
simGetVariable
(
SScript
*
script
,
char
*
varName
,
int32_t
varLen
)
{
char
*
simGetVariable
(
SScript
*
script
,
char
*
varName
,
int32_t
varLen
)
{
if
(
strncmp
(
varName
,
"hostname"
,
8
)
==
0
)
{
if
(
strncmp
(
varName
,
"hostname"
,
8
)
==
0
)
{
return
simParseHostName
(
varName
);
return
simParseHostName
(
varName
);
...
@@ -66,13 +101,40 @@ char *simGetVariable(SScript *script, char *varName, int32_t varLen) {
...
@@ -66,13 +101,40 @@ char *simGetVariable(SScript *script, char *varName, int32_t varLen) {
if
(
strncmp
(
varName
,
"system_content"
,
varLen
)
==
0
)
return
script
->
system_ret_content
;
if
(
strncmp
(
varName
,
"system_content"
,
varLen
)
==
0
)
return
script
->
system_ret_content
;
// variable like data2_192.168.0.1
if
(
strncmp
(
varName
,
"data"
,
4
)
==
0
)
{
if
(
strncmp
(
varName
,
"data"
,
4
)
==
0
)
{
if
(
varLen
<
6
)
{
if
(
varLen
<
6
)
{
return
"null"
;
return
"null"
;
}
}
if
(
varName
[
5
]
==
'_'
)
{
int32_t
row
=
0
;
int32_t
col
=
0
;
char
keyVal
[
1024
]
=
{
0
};
int32_t
keyLen
=
1024
;
if
(
varName
[
4
]
==
'['
)
{
// $data[0][1]
simFindFirstNum
(
varName
,
varLen
,
&
row
);
simFindSecondNum
(
varName
,
varLen
,
&
col
);
if
(
row
<
0
||
row
>=
MAX_QUERY_ROW_NUM
)
{
return
"null"
;
}
if
(
col
<
0
||
col
>=
MAX_QUERY_COL_NUM
)
{
return
"null"
;
}
simDebug
(
"script:%s, data[%d][%d]=%s"
,
script
->
fileName
,
row
,
col
,
script
->
data
[
row
][
col
]);
return
script
->
data
[
row
][
col
];
}
else
if
(
varName
[
4
]
==
'('
)
{
// $data(db)[0]
simFindFirstKeyVal
(
varName
,
varLen
,
keyVal
,
keyLen
);
simFindSecondKeyNum
(
varName
,
varLen
,
&
col
);
for
(
int32_t
i
=
0
;
i
<
MAX_QUERY_ROW_NUM
;
++
i
)
{
if
(
strncmp
(
keyVal
,
script
->
data
[
i
][
0
],
keyLen
)
==
0
)
{
simDebug
(
"script:%s, keyName:%s, keyValue:%s"
,
script
->
fileName
,
script
->
data
[
i
][
0
],
script
->
data
[
i
][
col
]);
return
script
->
data
[
i
][
col
];
}
}
}
else
if
(
varName
[
5
]
==
'_'
)
{
// data2_db
int32_t
col
=
varName
[
4
]
-
'0'
;
int32_t
col
=
varName
[
4
]
-
'0'
;
if
(
col
<
0
||
col
>=
MAX_QUERY_COL_NUM
)
{
if
(
col
<
0
||
col
>=
MAX_QUERY_COL_NUM
)
{
return
"null"
;
return
"null"
;
...
@@ -90,6 +152,7 @@ char *simGetVariable(SScript *script, char *varName, int32_t varLen) {
...
@@ -90,6 +152,7 @@ char *simGetVariable(SScript *script, char *varName, int32_t varLen) {
}
}
return
"null"
;
return
"null"
;
}
else
if
(
varName
[
6
]
==
'_'
)
{
}
else
if
(
varName
[
6
]
==
'_'
)
{
// data21_db
int32_t
col
=
(
varName
[
4
]
-
'0'
)
*
10
+
(
varName
[
5
]
-
'0'
);
int32_t
col
=
(
varName
[
4
]
-
'0'
)
*
10
+
(
varName
[
5
]
-
'0'
);
if
(
col
<
0
||
col
>=
MAX_QUERY_COL_NUM
)
{
if
(
col
<
0
||
col
>=
MAX_QUERY_COL_NUM
)
{
return
"null"
;
return
"null"
;
...
@@ -107,6 +170,7 @@ char *simGetVariable(SScript *script, char *varName, int32_t varLen) {
...
@@ -107,6 +170,7 @@ char *simGetVariable(SScript *script, char *varName, int32_t varLen) {
}
}
return
"null"
;
return
"null"
;
}
else
{
}
else
{
// $data00
int32_t
row
=
varName
[
4
]
-
'0'
;
int32_t
row
=
varName
[
4
]
-
'0'
;
int32_t
col
=
varName
[
5
]
-
'0'
;
int32_t
col
=
varName
[
5
]
-
'0'
;
if
(
row
<
0
||
row
>=
MAX_QUERY_ROW_NUM
)
{
if
(
row
<
0
||
row
>=
MAX_QUERY_ROW_NUM
)
{
...
@@ -119,6 +183,8 @@ char *simGetVariable(SScript *script, char *varName, int32_t varLen) {
...
@@ -119,6 +183,8 @@ char *simGetVariable(SScript *script, char *varName, int32_t varLen) {
simDebug
(
"script:%s, data[%d][%d]=%s"
,
script
->
fileName
,
row
,
col
,
script
->
data
[
row
][
col
]);
simDebug
(
"script:%s, data[%d][%d]=%s"
,
script
->
fileName
,
row
,
col
,
script
->
data
[
row
][
col
]);
return
script
->
data
[
row
][
col
];
return
script
->
data
[
row
][
col
];
}
}
return
"null"
;
}
}
for
(
int32_t
i
=
0
;
i
<
script
->
varLen
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
script
->
varLen
;
++
i
)
{
...
@@ -127,9 +193,6 @@ char *simGetVariable(SScript *script, char *varName, int32_t varLen) {
...
@@ -127,9 +193,6 @@ char *simGetVariable(SScript *script, char *varName, int32_t varLen) {
continue
;
continue
;
}
}
if
(
strncmp
(
varName
,
var
->
varName
,
varLen
)
==
0
)
{
if
(
strncmp
(
varName
,
var
->
varName
,
varLen
)
==
0
)
{
// if (strlen(var->varValue) != 0)
// simDebug("script:%s, var:%s, value:%s", script->fileName,
// var->varName, var->varValue);
return
var
->
varValue
;
return
var
->
varValue
;
}
}
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录