Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
loser646
TDengine
提交
59962fed
T
TDengine
项目概览
loser646
/
TDengine
与 Fork 源项目一致
Fork自
taosdata / TDengine
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
59962fed
编写于
7月 25, 2020
作者:
H
Hongze Cheng
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'develop' into feature/2.0tsdb
上级
b7f6b35e
f4cf3709
变更
68
隐藏空白更改
内联
并排
Showing
68 changed file
with
1030 addition
and
294 deletion
+1030
-294
src/client/src/tscSQLParser.c
src/client/src/tscSQLParser.c
+4
-4
src/client/src/tscServer.c
src/client/src/tscServer.c
+4
-5
src/client/src/tscSub.c
src/client/src/tscSub.c
+2
-1
src/common/inc/tglobal.h
src/common/inc/tglobal.h
+1
-1
src/common/src/tglobal.c
src/common/src/tglobal.c
+4
-4
src/inc/taoserror.h
src/inc/taoserror.h
+11
-6
src/inc/taosmsg.h
src/inc/taosmsg.h
+1
-0
src/inc/tbalance.h
src/inc/tbalance.h
+1
-1
src/mnode/src/mnodeBalance.c
src/mnode/src/mnodeBalance.c
+1
-1
src/mnode/src/mnodeDnode.c
src/mnode/src/mnodeDnode.c
+12
-2
src/mnode/src/mnodeTable.c
src/mnode/src/mnodeTable.c
+98
-0
src/mnode/src/mnodeVgroup.c
src/mnode/src/mnodeVgroup.c
+8
-26
src/query/src/qExecutor.c
src/query/src/qExecutor.c
+4
-2
src/query/src/qUtil.c
src/query/src/qUtil.c
+3
-0
src/rpc/src/rpcMain.c
src/rpc/src/rpcMain.c
+12
-2
src/tsdb/src/tsdbMeta.c
src/tsdb/src/tsdbMeta.c
+3
-1
src/tsdb/src/tsdbRead.c
src/tsdb/src/tsdbRead.c
+4
-1
tests/perftest-scripts/cassandraTestWriteLoop.sh
tests/perftest-scripts/cassandraTestWriteLoop.sh
+88
-0
tests/pytest/fulltest.sh
tests/pytest/fulltest.sh
+2
-1
tests/pytest/subscribe/__init__.py
tests/pytest/subscribe/__init__.py
+0
-0
tests/pytest/subscribe/singlemeter.py
tests/pytest/subscribe/singlemeter.py
+79
-0
tests/pytest/subscribe/supertable.py
tests/pytest/subscribe/supertable.py
+114
-0
tests/pytest/test.sh
tests/pytest/test.sh
+23
-0
tests/pytest/testMinTablesPerVnode.py
tests/pytest/testMinTablesPerVnode.py
+131
-0
tests/pytest/util/dnodes.py
tests/pytest/util/dnodes.py
+4
-4
tests/pytest/util/sub.py
tests/pytest/util/sub.py
+43
-0
tests/script/general/parser/stream_on_sys.sim
tests/script/general/parser/stream_on_sys.sim
+1
-1
tests/script/jenkins/basic.txt
tests/script/jenkins/basic.txt
+7
-10
tests/script/sh/deploy.sh
tests/script/sh/deploy.sh
+1
-1
tests/script/tmp/mnodes.sim
tests/script/tmp/mnodes.sim
+15
-55
tests/script/unique/arbitrator/dn3_mn1_r2_vnode_delDir.sim
tests/script/unique/arbitrator/dn3_mn1_r2_vnode_delDir.sim
+6
-6
tests/script/unique/arbitrator/dn3_mn1_r3_vnode_delDir.sim
tests/script/unique/arbitrator/dn3_mn1_r3_vnode_delDir.sim
+8
-8
tests/script/unique/arbitrator/dn3_mn1_replica_change.sim
tests/script/unique/arbitrator/dn3_mn1_replica_change.sim
+8
-8
tests/script/unique/arbitrator/dn3_mn1_vnode_change.sim
tests/script/unique/arbitrator/dn3_mn1_vnode_change.sim
+6
-6
tests/script/unique/arbitrator/dn3_mn1_vnode_corruptFile_offline.sim
...t/unique/arbitrator/dn3_mn1_vnode_corruptFile_offline.sim
+8
-8
tests/script/unique/arbitrator/dn3_mn1_vnode_corruptFile_online.sim
...pt/unique/arbitrator/dn3_mn1_vnode_corruptFile_online.sim
+6
-6
tests/script/unique/arbitrator/dn3_mn1_vnode_createErrData_online.sim
.../unique/arbitrator/dn3_mn1_vnode_createErrData_online.sim
+6
-6
tests/script/unique/arbitrator/dn3_mn1_vnode_delDir.sim
tests/script/unique/arbitrator/dn3_mn1_vnode_delDir.sim
+8
-8
tests/script/unique/arbitrator/dn3_mn1_vnode_noCorruptFile_offline.sim
...unique/arbitrator/dn3_mn1_vnode_noCorruptFile_offline.sim
+8
-8
tests/script/unique/arbitrator/dn3_mn1_vnode_nomaster.sim
tests/script/unique/arbitrator/dn3_mn1_vnode_nomaster.sim
+4
-4
tests/script/unique/arbitrator/offline_replica2_alterTable_online.sim
.../unique/arbitrator/offline_replica2_alterTable_online.sim
+2
-2
tests/script/unique/arbitrator/offline_replica2_alterTag_online.sim
...pt/unique/arbitrator/offline_replica2_alterTag_online.sim
+2
-2
tests/script/unique/arbitrator/offline_replica2_createTable_online.sim
...unique/arbitrator/offline_replica2_createTable_online.sim
+2
-2
tests/script/unique/arbitrator/offline_replica2_dropDb_online.sim
...ript/unique/arbitrator/offline_replica2_dropDb_online.sim
+2
-2
tests/script/unique/arbitrator/offline_replica2_dropTable_online.sim
...t/unique/arbitrator/offline_replica2_dropTable_online.sim
+2
-2
tests/script/unique/arbitrator/offline_replica3_alterTable_online.sim
.../unique/arbitrator/offline_replica3_alterTable_online.sim
+2
-2
tests/script/unique/arbitrator/offline_replica3_alterTag_online.sim
...pt/unique/arbitrator/offline_replica3_alterTag_online.sim
+2
-2
tests/script/unique/arbitrator/offline_replica3_createTable_online.sim
...unique/arbitrator/offline_replica3_createTable_online.sim
+2
-2
tests/script/unique/arbitrator/offline_replica3_dropDb_online.sim
...ript/unique/arbitrator/offline_replica3_dropDb_online.sim
+2
-2
tests/script/unique/arbitrator/offline_replica3_dropTable_online.sim
...t/unique/arbitrator/offline_replica3_dropTable_online.sim
+2
-2
tests/script/unique/arbitrator/sync_replica2_alterTable_add.sim
...script/unique/arbitrator/sync_replica2_alterTable_add.sim
+2
-2
tests/script/unique/arbitrator/sync_replica2_alterTable_drop.sim
...cript/unique/arbitrator/sync_replica2_alterTable_drop.sim
+2
-2
tests/script/unique/arbitrator/sync_replica2_dropDb.sim
tests/script/unique/arbitrator/sync_replica2_dropDb.sim
+2
-2
tests/script/unique/arbitrator/sync_replica2_dropTable.sim
tests/script/unique/arbitrator/sync_replica2_dropTable.sim
+2
-2
tests/script/unique/arbitrator/sync_replica3_alterTable_add.sim
...script/unique/arbitrator/sync_replica3_alterTable_add.sim
+2
-2
tests/script/unique/arbitrator/sync_replica3_alterTable_drop.sim
...cript/unique/arbitrator/sync_replica3_alterTable_drop.sim
+2
-2
tests/script/unique/arbitrator/sync_replica3_createTable.sim
tests/script/unique/arbitrator/sync_replica3_createTable.sim
+2
-2
tests/script/unique/arbitrator/sync_replica3_dnodeChang_DropAddAlterTableDropDb.sim
...ator/sync_replica3_dnodeChang_DropAddAlterTableDropDb.sim
+14
-14
tests/script/unique/arbitrator/sync_replica3_dropDb.sim
tests/script/unique/arbitrator/sync_replica3_dropDb.sim
+2
-2
tests/script/unique/arbitrator/sync_replica3_dropTable.sim
tests/script/unique/arbitrator/sync_replica3_dropTable.sim
+2
-2
tests/script/unique/cluster/alter.sim
tests/script/unique/cluster/alter.sim
+174
-0
tests/script/unique/migrate/mn2_vn2_repl2_rmMnodeDir.sim
tests/script/unique/migrate/mn2_vn2_repl2_rmMnodeDir.sim
+6
-6
tests/script/unique/migrate/mn2_vn2_repl2_rmMnodeVnodeDir.sim
...s/script/unique/migrate/mn2_vn2_repl2_rmMnodeVnodeDir.sim
+6
-6
tests/script/unique/migrate/mn2_vn2_repl2_rmMnodeVnodeDir_stopAll_starAll.sim
...migrate/mn2_vn2_repl2_rmMnodeVnodeDir_stopAll_starAll.sim
+6
-6
tests/script/unique/migrate/mn2_vn2_repl2_rmVnodeDir.sim
tests/script/unique/migrate/mn2_vn2_repl2_rmVnodeDir.sim
+6
-6
tests/test/c/CMakeLists.txt
tests/test/c/CMakeLists.txt
+2
-2
tests/test/c/insertPerRow.c
tests/test/c/insertPerRow.c
+23
-13
tests/tsim/src/simExe.c
tests/tsim/src/simExe.c
+6
-6
未找到文件。
src/client/src/tscSQLParser.c
浏览文件 @
59962fed
...
...
@@ -358,7 +358,7 @@ int32_t tscToSQLCmd(SSqlObj* pSql, struct SSqlInfo* pInfo) {
}
case
TSDB_SQL_CFG_DNODE
:
{
const
char
*
msg2
=
"invalid configure options or values, such as resetlog / debugFlag 135 / balance 'vnode:
1
-dnode:2' / monitor 1 "
;
const
char
*
msg2
=
"invalid configure options or values, such as resetlog / debugFlag 135 / balance 'vnode:
2
-dnode:2' / monitor 1 "
;
const
char
*
msg3
=
"invalid dnode ep"
;
/* validate the ip address */
...
...
@@ -4700,10 +4700,10 @@ int32_t validateDNodeConfig(tDCLSQL* pOptions) {
}
else
if
((
strncasecmp
(
cfgOptions
[
tokenBalance
].
name
,
pOptionToken
->
z
,
pOptionToken
->
n
)
==
0
)
&&
(
cfgOptions
[
tokenBalance
].
len
==
pOptionToken
->
n
))
{
SSQLToken
*
pValToken
=
&
pOptions
->
a
[
2
];
int32_t
vnodeI
ndex
=
0
;
int32_t
dnodeI
ndex
=
0
;
int32_t
vnodeI
d
=
0
;
int32_t
dnodeI
d
=
0
;
strdequote
(
pValToken
->
z
);
bool
parseOk
=
taosCheckBalanceCfgOptions
(
pValToken
->
z
,
&
vnodeI
ndex
,
&
dnodeIndex
);
bool
parseOk
=
taosCheckBalanceCfgOptions
(
pValToken
->
z
,
&
vnodeI
d
,
&
dnodeId
);
if
(
!
parseOk
)
{
return
TSDB_CODE_TSC_INVALID_SQL
;
// options value is invalid
}
...
...
src/client/src/tscServer.c
浏览文件 @
59962fed
...
...
@@ -106,13 +106,14 @@ static void tscUpdateVgroupInfo(SSqlObj *pObj, SRpcEpSet *pEpSet) {
SCMCorVgroupInfo
*
pVgroupInfo
=
&
pTableMetaInfo
->
pTableMeta
->
corVgroupInfo
;
taosCorBeginWrite
(
&
pVgroupInfo
->
version
);
//TODO(dengyihao), dont care vgid
tscDebug
(
"before: Endpoint in use: %d"
,
pVgroupInfo
->
inUse
);
pVgroupInfo
->
inUse
=
pEpSet
->
inUse
;
pVgroupInfo
->
numOfEps
=
pEpSet
->
numOfEps
;
for
(
int32_t
i
=
0
;
pVgroupInfo
->
numOfEps
;
i
++
)
{
for
(
int32_t
i
=
0
;
i
<
pVgroupInfo
->
numOfEps
;
i
++
)
{
strncpy
(
pVgroupInfo
->
epAddr
[
i
].
fqdn
,
pEpSet
->
fqdn
[
i
],
TSDB_FQDN_LEN
);
pVgroupInfo
->
epAddr
[
i
].
port
=
pEpSet
->
port
[
i
];
}
tscDebug
(
"after: EndPoint in use: %d"
,
pVgroupInfo
->
inUse
);
taosCorEndWrite
(
&
pVgroupInfo
->
version
);
}
void
tscPrintMgmtEp
()
{
...
...
@@ -283,9 +284,7 @@ void tscProcessMsgFromServer(SRpcMsg *rpcMsg, SRpcEpSet *pEpSet) {
}
if
(
pEpSet
)
{
//SRpcEpSet dump;
tscEpSetHtons
(
pEpSet
);
if
(
tscEpSetIsEqual
(
&
pSql
->
epSet
,
pEpSet
))
{
if
(
!
tscEpSetIsEqual
(
&
pSql
->
epSet
,
pEpSet
))
{
if
(
pCmd
->
command
<
TSDB_SQL_MGMT
)
{
tscUpdateVgroupInfo
(
pSql
,
pEpSet
);
}
else
{
...
...
src/client/src/tscSub.c
浏览文件 @
59962fed
...
...
@@ -256,11 +256,12 @@ static int tscUpdateSubscription(STscObj* pObj, SSub* pSub) {
}
size_t
numOfTables
=
taosArrayGetSize
(
tables
);
SQueryInfo
*
pQueryInfo
=
tscGetQueryInfoDetail
(
pCmd
,
0
);
SArray
*
progress
=
taosArrayInit
(
numOfTables
,
sizeof
(
SSubscriptionProgress
));
for
(
size_t
i
=
0
;
i
<
numOfTables
;
i
++
)
{
STidTags
*
tt
=
taosArrayGet
(
tables
,
i
);
SSubscriptionProgress
p
=
{
.
uid
=
tt
->
uid
};
p
.
key
=
tscGetSubscriptionProgress
(
pSub
,
tt
->
uid
,
INT64_MIN
);
p
.
key
=
tscGetSubscriptionProgress
(
pSub
,
tt
->
uid
,
pQueryInfo
->
window
.
skey
);
taosArrayPush
(
progress
,
&
p
);
}
taosArraySort
(
progress
,
tscCompareSubscriptionProgress
);
...
...
src/common/inc/tglobal.h
浏览文件 @
59962fed
...
...
@@ -174,7 +174,7 @@ bool taosCheckGlobalCfg();
void
taosSetAllDebugFlag
();
bool
taosCfgDynamicOptions
(
char
*
msg
);
int
taosGetFqdnPortFromEp
(
const
char
*
ep
,
char
*
fqdn
,
uint16_t
*
port
);
bool
taosCheckBalanceCfgOptions
(
const
char
*
option
,
int32_t
*
vnodeI
ndex
,
int32_t
*
dnodeIndex
);
bool
taosCheckBalanceCfgOptions
(
const
char
*
option
,
int32_t
*
vnodeI
d
,
int32_t
*
dnodeId
);
#ifdef __cplusplus
}
...
...
src/common/src/tglobal.c
浏览文件 @
59962fed
...
...
@@ -1315,7 +1315,7 @@ int taosGetFqdnPortFromEp(const char *ep, char *fqdn, uint16_t *port) {
* alter dnode 1 balance "vnode:1-dnode:2"
*/
bool
taosCheckBalanceCfgOptions
(
const
char
*
option
,
int32_t
*
vnodeI
ndex
,
int32_t
*
dnodeIndex
)
{
bool
taosCheckBalanceCfgOptions
(
const
char
*
option
,
int32_t
*
vnodeI
d
,
int32_t
*
dnodeId
)
{
int
len
=
strlen
(
option
);
if
(
strncasecmp
(
option
,
"vnode:"
,
6
)
!=
0
)
{
return
false
;
...
...
@@ -1331,9 +1331,9 @@ bool taosCheckBalanceCfgOptions(const char *option, int32_t *vnodeIndex, int32_t
return
false
;
}
*
vnodeI
ndex
=
strtol
(
option
+
6
,
NULL
,
10
);
*
dnodeI
ndex
=
strtol
(
option
+
pos
+
6
,
NULL
,
10
);
if
(
*
vnodeI
ndex
<=
1
||
*
dnodeIndex
<=
0
)
{
*
vnodeI
d
=
strtol
(
option
+
6
,
NULL
,
10
);
*
dnodeI
d
=
strtol
(
option
+
pos
+
6
,
NULL
,
10
);
if
(
*
vnodeI
d
<=
1
||
*
dnodeId
<=
0
)
{
return
false
;
}
...
...
src/inc/taoserror.h
浏览文件 @
59962fed
...
...
@@ -120,12 +120,17 @@ TAOS_DEFINE_ERROR(TSDB_CODE_MND_SDB_OBJ_NOT_THERE, 0, 0x0323, "sdb object
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_SDB_INVAID_META_ROW
,
0
,
0x0324
,
"sdb invalid meta row"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_SDB_INVAID_KEY_TYPE
,
0
,
0x0325
,
"sdb invalid key type"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_DNODE_ALREADY_EXIST
,
0
,
0x0330
,
"mnode dnode already exist"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_DNODE_NOT_EXIST
,
0
,
0x0331
,
"mnode dnode not exist"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_VGROUP_NOT_EXIST
,
0
,
0x0332
,
"mnode vgroup not exist"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_NO_REMOVE_MASTER
,
0
,
0x0333
,
"mnode cant not remove master"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_NO_ENOUGH_DNODES
,
0
,
0x0334
,
"mnode no enough dnodes"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_CLUSTER_CFG_INCONSISTENT
,
0
,
0x0335
,
"mnode cluster cfg inconsistent"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_DNODE_ALREADY_EXIST
,
0
,
0x0330
,
"dnode already exist"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_DNODE_NOT_EXIST
,
0
,
0x0331
,
"dnode not exist"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_VGROUP_NOT_EXIST
,
0
,
0x0332
,
"vgroup not exist"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_NO_REMOVE_MASTER
,
0
,
0x0333
,
"cant not remove master"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_NO_ENOUGH_DNODES
,
0
,
0x0334
,
"no enough dnodes"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_CLUSTER_CFG_INCONSISTENT
,
0
,
0x0335
,
"cluster cfg inconsistent"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_INVALID_DNODE_CFG_OPTION
,
0
,
0x0336
,
"invalid dnode cfg option"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_BALANCE_ENABLED
,
0
,
0x0337
,
"balance already enabled"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_VGROUP_NOT_IN_DNODE
,
0
,
0x0338
,
"vgroup not in dnode"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_VGROUP_ALREADY_IN_DNODE
,
0
,
0x0339
,
"vgroup already in dnode"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_DNODE_NOT_FREE
,
0
,
0x033A
,
"dnode not avaliable"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_ACCT_ALREADY_EXIST
,
0
,
0x0340
,
"mnode accounts already exist"
)
TAOS_DEFINE_ERROR
(
TSDB_CODE_MND_INVALID_ACCT
,
0
,
0x0341
,
"mnode invalid account"
)
...
...
src/inc/taosmsg.h
浏览文件 @
59962fed
...
...
@@ -149,6 +149,7 @@ enum _mgmt_table {
#define TSDB_ALTER_TABLE_ADD_COLUMN 5
#define TSDB_ALTER_TABLE_DROP_COLUMN 6
#define TSDB_ALTER_TABLE_CHANGE_COLUMN 7
#define TSDB_FILL_NONE 0
#define TSDB_FILL_NULL 1
...
...
src/inc/tbalance.h
浏览文件 @
59962fed
...
...
@@ -29,7 +29,7 @@ void balanceAsyncNotify();
void
balanceSyncNotify
();
void
balanceReset
();
int32_t
balanceAllocVnodes
(
struct
SVgObj
*
pVgroup
);
int32_t
balance
CfgDnode
(
struct
SDnodeObj
*
pDnode
,
const
char
*
option
);
int32_t
balance
AlterDnode
(
struct
SDnodeObj
*
pDnode
,
int32_t
vnodeId
,
int32_t
dnodeId
);
int32_t
balanceDropDnode
(
struct
SDnodeObj
*
pDnode
);
#ifdef __cplusplus
...
...
src/mnode/src/mnodeBalance.c
浏览文件 @
59962fed
...
...
@@ -28,7 +28,7 @@ void balanceCleanUp() {}
void
balanceAsyncNotify
()
{}
void
balanceSyncNotify
()
{}
void
balanceReset
()
{}
int32_t
balance
CfgDnode
(
struct
SDnodeObj
*
pDnode
,
const
char
*
option
)
{
return
TSDB_CODE_SYN_NOT_ENABLED
;
}
int32_t
balance
AlterDnode
(
struct
SDnodeObj
*
pDnode
,
int32_t
vnodeId
,
int32_t
dnodeId
)
{
return
TSDB_CODE_SYN_NOT_ENABLED
;
}
int32_t
balanceAllocVnodes
(
SVgObj
*
pVgroup
)
{
void
*
pIter
=
NULL
;
...
...
src/mnode/src/mnodeDnode.c
浏览文件 @
59962fed
...
...
@@ -295,10 +295,19 @@ static int32_t mnodeProcessCfgDnodeMsg(SMnodeMsg *pMsg) {
}
SRpcEpSet
epSet
=
mnodeGetEpSetFromIp
(
pDnode
->
dnodeEp
);
mnodeDecDnodeRef
(
pDnode
);
if
(
strncasecmp
(
pCmCfgDnode
->
config
,
"balance"
,
7
)
==
0
)
{
return
balanceCfgDnode
(
pDnode
,
pCmCfgDnode
->
config
+
8
);
int32_t
vnodeId
=
0
;
int32_t
dnodeId
=
0
;
bool
parseOk
=
taosCheckBalanceCfgOptions
(
pCmCfgDnode
->
config
+
8
,
&
vnodeId
,
&
dnodeId
);
if
(
!
parseOk
)
{
mnodeDecDnodeRef
(
pDnode
);
return
TSDB_CODE_MND_INVALID_DNODE_CFG_OPTION
;
}
int32_t
code
=
balanceAlterDnode
(
pDnode
,
vnodeId
,
dnodeId
);
mnodeDecDnodeRef
(
pDnode
);
return
code
;
}
else
{
SMDCfgDnodeMsg
*
pMdCfgDnode
=
rpcMallocCont
(
sizeof
(
SMDCfgDnodeMsg
));
strcpy
(
pMdCfgDnode
->
ep
,
pCmCfgDnode
->
ep
);
...
...
@@ -314,6 +323,7 @@ static int32_t mnodeProcessCfgDnodeMsg(SMnodeMsg *pMsg) {
mInfo
(
"dnode:%s, is configured by %s"
,
pCmCfgDnode
->
ep
,
pMsg
->
pUser
->
user
);
dnodeSendMsgToDnode
(
&
epSet
,
&
rpcMdCfgDnodeMsg
);
mnodeDecDnodeRef
(
pDnode
);
return
TSDB_CODE_SUCCESS
;
}
}
...
...
src/mnode/src/mnodeTable.c
浏览文件 @
59962fed
...
...
@@ -1223,6 +1223,55 @@ static int32_t mnodeDropSuperTableColumn(SMnodeMsg *pMsg, char *colName) {
return
code
;
}
static
int32_t
mnodeChangeSuperTableColumnCb
(
SMnodeMsg
*
pMsg
,
int32_t
code
)
{
SSuperTableObj
*
pStable
=
(
SSuperTableObj
*
)
pMsg
->
pTable
;
mLInfo
(
"app:%p:%p, stable %s, change column result:%s"
,
pMsg
->
rpcMsg
.
ahandle
,
pMsg
,
pStable
->
info
.
tableId
,
tstrerror
(
code
));
return
code
;
}
static
int32_t
mnodeChangeSuperTableColumn
(
SMnodeMsg
*
pMsg
,
char
*
oldName
,
char
*
newName
)
{
SSuperTableObj
*
pStable
=
(
SSuperTableObj
*
)
pMsg
->
pTable
;
int32_t
col
=
mnodeFindSuperTableColumnIndex
(
pStable
,
oldName
);
if
(
col
<
0
)
{
mError
(
"app:%p:%p, stable:%s, change column, oldName: %s, newName: %s"
,
pMsg
->
rpcMsg
.
ahandle
,
pMsg
,
pStable
->
info
.
tableId
,
oldName
,
newName
);
return
TSDB_CODE_MND_FIELD_NOT_EXIST
;
}
// int32_t rowSize = 0;
uint32_t
len
=
strlen
(
newName
);
if
(
len
>=
TSDB_COL_NAME_LEN
)
{
return
TSDB_CODE_MND_COL_NAME_TOO_LONG
;
}
if
(
mnodeFindSuperTableColumnIndex
(
pStable
,
newName
)
>=
0
)
{
return
TSDB_CODE_MND_FIELD_ALREAY_EXIST
;
}
// update
SSchema
*
schema
=
(
SSchema
*
)
(
pStable
->
schema
+
col
);
tstrncpy
(
schema
->
name
,
newName
,
sizeof
(
schema
->
name
));
mInfo
(
"app:%p:%p, stable %s, start to modify column %s to %s"
,
pMsg
->
rpcMsg
.
ahandle
,
pMsg
,
pStable
->
info
.
tableId
,
oldName
,
newName
);
SSdbOper
oper
=
{
.
type
=
SDB_OPER_GLOBAL
,
.
table
=
tsSuperTableSdb
,
.
pObj
=
pStable
,
.
pMsg
=
pMsg
,
.
cb
=
mnodeChangeSuperTableColumnCb
};
int32_t
code
=
sdbUpdateRow
(
&
oper
);
if
(
code
==
TSDB_CODE_SUCCESS
)
{
code
=
TSDB_CODE_MND_ACTION_IN_PROGRESS
;
}
return
code
;
}
// show super tables
static
int32_t
mnodeGetShowSuperTableMeta
(
STableMetaMsg
*
pMeta
,
SShowObj
*
pShow
,
void
*
pConn
)
{
SDbObj
*
pDb
=
mnodeGetDb
(
pShow
->
db
);
...
...
@@ -1405,6 +1454,9 @@ static int32_t mnodeSetSchemaFromSuperTable(SSchema *pSchema, SSuperTableObj *pT
static
int32_t
mnodeGetSuperTableMeta
(
SMnodeMsg
*
pMsg
)
{
SSuperTableObj
*
pTable
=
(
SSuperTableObj
*
)
pMsg
->
pTable
;
STableMetaMsg
*
pMeta
=
rpcMallocCont
(
sizeof
(
STableMetaMsg
)
+
sizeof
(
SSchema
)
*
(
TSDB_MAX_TAGS
+
TSDB_MAX_COLUMNS
+
16
));
if
(
pMeta
==
NULL
)
{
return
TSDB_CODE_MND_OUT_OF_MEMORY
;
}
pMeta
->
uid
=
htobe64
(
pTable
->
uid
);
pMeta
->
sversion
=
htons
(
pTable
->
sversion
);
pMeta
->
tversion
=
htons
(
pTable
->
tversion
);
...
...
@@ -1977,6 +2029,48 @@ static int32_t mnodeDropNormalTableColumn(SMnodeMsg *pMsg, char *colName) {
return
code
;
}
static
int32_t
mnodeChangeNormalTableColumn
(
SMnodeMsg
*
pMsg
,
char
*
oldName
,
char
*
newName
)
{
SChildTableObj
*
pTable
=
(
SChildTableObj
*
)
pMsg
->
pTable
;
int32_t
col
=
mnodeFindNormalTableColumnIndex
(
pTable
,
oldName
);
if
(
col
<
0
)
{
mError
(
"app:%p:%p, ctable:%s, change column, oldName: %s, newName: %s"
,
pMsg
->
rpcMsg
.
ahandle
,
pMsg
,
pTable
->
info
.
tableId
,
oldName
,
newName
);
return
TSDB_CODE_MND_FIELD_NOT_EXIST
;
}
// int32_t rowSize = 0;
uint32_t
len
=
strlen
(
newName
);
if
(
len
>=
TSDB_COL_NAME_LEN
)
{
return
TSDB_CODE_MND_COL_NAME_TOO_LONG
;
}
if
(
mnodeFindNormalTableColumnIndex
(
pTable
,
newName
)
>=
0
)
{
return
TSDB_CODE_MND_FIELD_ALREAY_EXIST
;
}
// update
SSchema
*
schema
=
(
SSchema
*
)
(
pTable
->
schema
+
col
);
tstrncpy
(
schema
->
name
,
newName
,
sizeof
(
schema
->
name
));
mInfo
(
"app:%p:%p, ctable %s, start to modify column %s to %s"
,
pMsg
->
rpcMsg
.
ahandle
,
pMsg
,
pTable
->
info
.
tableId
,
oldName
,
newName
);
SSdbOper
oper
=
{
.
type
=
SDB_OPER_GLOBAL
,
.
table
=
tsChildTableSdb
,
.
pObj
=
pTable
,
.
pMsg
=
pMsg
,
.
cb
=
mnodeAlterNormalTableColumnCb
};
int32_t
code
=
sdbUpdateRow
(
&
oper
);
if
(
code
==
TSDB_CODE_SUCCESS
)
{
code
=
TSDB_CODE_MND_ACTION_IN_PROGRESS
;
}
return
code
;
}
static
int32_t
mnodeSetSchemaFromNormalTable
(
SSchema
*
pSchema
,
SChildTableObj
*
pTable
)
{
int32_t
numOfCols
=
pTable
->
numOfColumns
;
for
(
int32_t
i
=
0
;
i
<
numOfCols
;
++
i
)
{
...
...
@@ -2596,6 +2690,8 @@ static int32_t mnodeProcessAlterTableMsg(SMnodeMsg *pMsg) {
code
=
mnodeAddSuperTableColumn
(
pMsg
,
pAlter
->
schema
,
1
);
}
else
if
(
pAlter
->
type
==
TSDB_ALTER_TABLE_DROP_COLUMN
)
{
code
=
mnodeDropSuperTableColumn
(
pMsg
,
pAlter
->
schema
[
0
].
name
);
}
else
if
(
pAlter
->
type
==
TSDB_ALTER_TABLE_CHANGE_COLUMN
)
{
code
=
mnodeChangeSuperTableColumn
(
pMsg
,
pAlter
->
schema
[
0
].
name
,
pAlter
->
schema
[
1
].
name
);
}
else
{
}
}
else
{
...
...
@@ -2606,6 +2702,8 @@ static int32_t mnodeProcessAlterTableMsg(SMnodeMsg *pMsg) {
code
=
mnodeAddNormalTableColumn
(
pMsg
,
pAlter
->
schema
,
1
);
}
else
if
(
pAlter
->
type
==
TSDB_ALTER_TABLE_DROP_COLUMN
)
{
code
=
mnodeDropNormalTableColumn
(
pMsg
,
pAlter
->
schema
[
0
].
name
);
}
else
if
(
pAlter
->
type
==
TSDB_ALTER_TABLE_CHANGE_COLUMN
)
{
code
=
mnodeChangeNormalTableColumn
(
pMsg
,
pAlter
->
schema
[
0
].
name
,
pAlter
->
schema
[
1
].
name
);
}
else
{
}
}
...
...
src/mnode/src/mnodeVgroup.c
浏览文件 @
59962fed
...
...
@@ -592,7 +592,7 @@ static int32_t mnodeGetVgroupMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *p
pSchema
[
cols
].
bytes
=
htons
(
pShow
->
bytes
[
cols
]);
cols
++
;
pShow
->
bytes
[
cols
]
=
12
+
VARSTR_HEADER_SIZE
;
pShow
->
bytes
[
cols
]
=
8
+
VARSTR_HEADER_SIZE
;
pSchema
[
cols
].
type
=
TSDB_DATA_TYPE_BINARY
;
strcpy
(
pSchema
[
cols
].
name
,
"status"
);
pSchema
[
cols
].
bytes
=
htons
(
pShow
->
bytes
[
cols
]);
...
...
@@ -619,12 +619,6 @@ static int32_t mnodeGetVgroupMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *p
pSchema
[
cols
].
bytes
=
htons
(
pShow
->
bytes
[
cols
]);
cols
++
;
pShow
->
bytes
[
cols
]
=
40
+
VARSTR_HEADER_SIZE
;
pSchema
[
cols
].
type
=
TSDB_DATA_TYPE_BINARY
;
strcpy
(
pSchema
[
cols
].
name
,
"end_point"
);
pSchema
[
cols
].
bytes
=
htons
(
pShow
->
bytes
[
cols
]);
cols
++
;
pShow
->
bytes
[
cols
]
=
9
+
VARSTR_HEADER_SIZE
;
pSchema
[
cols
].
type
=
TSDB_DATA_TYPE_BINARY
;
strcpy
(
pSchema
[
cols
].
name
,
"vstatus"
);
...
...
@@ -716,27 +710,15 @@ static int32_t mnodeRetrieveVgroups(SShowObj *pShow, char *data, int32_t rows, v
*
(
int16_t
*
)
pWrite
=
pVgroup
->
vnodeGid
[
i
].
dnodeId
;
cols
++
;
SDnodeObj
*
pDnode
=
pVgroup
->
vnodeGid
[
i
].
pDnode
;
SDnodeObj
*
pDnode
=
pVgroup
->
vnodeGid
[
i
].
pDnode
;
const
char
*
role
=
"NULL"
;
if
(
pDnode
!=
NULL
)
{
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
STR_WITH_MAXSIZE_TO_VARSTR
(
pWrite
,
pDnode
->
dnodeEp
,
pShow
->
bytes
[
cols
]);
cols
++
;
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
char
*
role
=
mnodeGetMnodeRoleStr
(
pVgroup
->
vnodeGid
[
i
].
role
);
STR_WITH_MAXSIZE_TO_VARSTR
(
pWrite
,
role
,
pShow
->
bytes
[
cols
]);
cols
++
;
}
else
{
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
const
char
*
src
=
"NULL"
;
STR_WITH_SIZE_TO_VARSTR
(
pWrite
,
src
,
strlen
(
src
));
cols
++
;
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
STR_WITH_SIZE_TO_VARSTR
(
pWrite
,
src
,
strlen
(
src
));
cols
++
;
role
=
mnodeGetMnodeRoleStr
(
pVgroup
->
vnodeGid
[
i
].
role
);
}
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
STR_WITH_MAXSIZE_TO_VARSTR
(
pWrite
,
role
,
pShow
->
bytes
[
cols
]);
cols
++
;
}
mnodeDecVgroupRef
(
pVgroup
);
...
...
src/query/src/qExecutor.c
浏览文件 @
59962fed
...
...
@@ -5913,8 +5913,10 @@ _cleanup_qinfo:
tsdbDestroyTableGroup
(
pTableGroupInfo
);
_cleanup_query:
taosArrayDestroy
(
pGroupbyExpr
->
columnInfo
);
tfree
(
pGroupbyExpr
);
if
(
pGroupbyExpr
!=
NULL
)
{
taosArrayDestroy
(
pGroupbyExpr
->
columnInfo
);
free
(
pGroupbyExpr
);
}
tfree
(
pTagCols
);
for
(
int32_t
i
=
0
;
i
<
numOfOutput
;
++
i
)
{
SExprInfo
*
pExprInfo
=
&
pExprs
[
i
];
...
...
src/query/src/qUtil.c
浏览文件 @
59962fed
...
...
@@ -41,6 +41,9 @@ int32_t initWindowResInfo(SWindowResInfo *pWindowResInfo, SQueryRuntimeEnv *pRun
pWindowResInfo
->
type
=
type
;
_hash_fn_t
fn
=
taosGetDefaultHashFunction
(
type
);
pWindowResInfo
->
hashList
=
taosHashInit
(
threshold
,
fn
,
false
);
if
(
pWindowResInfo
->
hashList
==
NULL
)
{
return
TSDB_CODE_QRY_OUT_OF_MEMORY
;
}
pWindowResInfo
->
curIndex
=
-
1
;
pWindowResInfo
->
size
=
0
;
...
...
src/rpc/src/rpcMain.c
浏览文件 @
59962fed
...
...
@@ -660,7 +660,7 @@ static SRpcConn *rpcAllocateClientConn(SRpcInfo *pRpc) {
pConn
->
spi
=
pRpc
->
spi
;
pConn
->
encrypt
=
pRpc
->
encrypt
;
if
(
pConn
->
spi
)
memcpy
(
pConn
->
secret
,
pRpc
->
secret
,
TSDB_KEY_LEN
);
tDebug
(
"%s %p client connection is allocated
"
,
pRpc
->
label
,
pConn
);
tDebug
(
"%s %p client connection is allocated
, uid:0x%x"
,
pRpc
->
label
,
pConn
,
pConn
->
linkUid
);
}
return
pConn
;
...
...
@@ -721,7 +721,7 @@ static SRpcConn *rpcAllocateServerConn(SRpcInfo *pRpc, SRecvInfo *pRecv) {
}
taosHashPut
(
pRpc
->
hash
,
hashstr
,
size
,
(
char
*
)
&
pConn
,
POINTER_BYTES
);
tDebug
(
"%s %p server connection is allocated
"
,
pRpc
->
label
,
pConn
);
tDebug
(
"%s %p server connection is allocated
, uid:0x%x"
,
pRpc
->
label
,
pConn
,
pConn
->
linkUid
);
}
return
pConn
;
...
...
@@ -848,6 +848,16 @@ static int rpcProcessRspHead(SRpcConn *pConn, SRpcHead *pHead) {
return
TSDB_CODE_RPC_ALREADY_PROCESSED
;
}
if
(
pHead
->
code
==
TSDB_CODE_RPC_MISMATCHED_LINK_ID
)
{
tDebug
(
"%s, mismatched linkUid, link shall be restarted"
,
pConn
->
info
);
pConn
->
secured
=
0
;
((
SRpcHead
*
)
pConn
->
pReqMsg
)
->
destId
=
0
;
rpcSendMsgToPeer
(
pConn
,
pConn
->
pReqMsg
,
pConn
->
reqMsgLen
);
if
(
pConn
->
connType
!=
RPC_CONN_TCPC
)
pConn
->
pTimer
=
taosTmrStart
(
rpcProcessRetryTimer
,
tsRpcTimer
,
pConn
,
pRpc
->
tmrCtrl
);
return
TSDB_CODE_RPC_ALREADY_PROCESSED
;
}
if
(
pHead
->
code
==
TSDB_CODE_RPC_ACTION_IN_PROGRESS
)
{
if
(
pConn
->
tretry
<=
tsRpcMaxRetry
)
{
tDebug
(
"%s, peer is still processing the transaction, retry:%d"
,
pConn
->
info
,
pConn
->
tretry
);
...
...
src/tsdb/src/tsdbMeta.c
浏览文件 @
59962fed
...
...
@@ -1218,7 +1218,9 @@ static void *tsdbInsertTableAct(STsdbRepo *pRepo, int8_t act, void *buf, STable
static
int
tsdbRemoveTableFromStore
(
STsdbRepo
*
pRepo
,
STable
*
pTable
)
{
int
tlen
=
tsdbGetTableEncodeSize
(
TSDB_DROP_META
,
pTable
);
void
*
buf
=
tsdbAllocBytes
(
pRepo
,
tlen
);
ASSERT
(
buf
!=
NULL
);
if
(
buf
==
NULL
)
{
return
-
1
;
}
void
*
pBuf
=
buf
;
if
(
TABLE_TYPE
(
pTable
)
==
TSDB_SUPER_TABLE
)
{
...
...
src/tsdb/src/tsdbRead.c
浏览文件 @
59962fed
...
...
@@ -175,6 +175,9 @@ static SArray* getDefaultLoadColumns(STsdbQueryHandle* pQueryHandle, bool loadTS
TsdbQueryHandleT
*
tsdbQueryTables
(
TSDB_REPO_T
*
tsdb
,
STsdbQueryCond
*
pCond
,
STableGroupInfo
*
groupList
,
void
*
qinfo
)
{
STsdbQueryHandle
*
pQueryHandle
=
calloc
(
1
,
sizeof
(
STsdbQueryHandle
));
if
(
pQueryHandle
==
NULL
)
{
goto
out_of_memory
;
}
pQueryHandle
->
order
=
pCond
->
order
;
pQueryHandle
->
window
=
pCond
->
twindow
;
pQueryHandle
->
pTsdb
=
tsdb
;
...
...
@@ -260,8 +263,8 @@ TsdbQueryHandleT* tsdbQueryTables(TSDB_REPO_T* tsdb, STsdbQueryCond* pCond, STab
return
(
TsdbQueryHandleT
)
pQueryHandle
;
out_of_memory:
terrno
=
TSDB_CODE_TDB_OUT_OF_MEMORY
;
tsdbCleanupQueryHandle
(
pQueryHandle
);
terrno
=
TSDB_CODE_TDB_OUT_OF_MEMORY
;
return
NULL
;
}
...
...
tests/perftest-scripts/cassandraTestWriteLoop.sh
0 → 100755
浏览文件 @
59962fed
#!/bin/bash
DATA_DIR
=
/mnt/root/testdata
NUM_LOOP
=
1
NUM_OF_FILES
=
100
OUT_FILE
=
cassandraWrite.out
rowsPerRequest
=(
1 10 50 100 500 1000 2000
)
function
printTo
{
if
$verbose
;
then
echo
$1
fi
}
function
runTest
{
for
c
in
`
seq
1
$clients
`
;
do
avgRPR[
$c
]=
0
done
printf
"R/R, "
for
c
in
`
seq
1
$clients
`
;
do
if
[
"
$c
"
==
"1"
]
;
then
printf
"
$c
client, "
else
printf
"
$c
clients, "
fi
done
printf
"
\n
"
for
r
in
${
rowsPerRequest
[@]
}
;
do
printf
"
$r
, "
for
c
in
`
seq
1
$clients
`
;
do
totalRPR
=
0
for
i
in
`
seq
1
$NUM_LOOP
`
;
do
printTo
"loop i:
$i
, java -jar
$CAS_TEST_DIR
/cassandratest/target/cassandratest-1.0-SNAPSHOT-jar-with-dependencies.jar
\
-datadir
$DATA_DIR
\
-numofFiles
$NUM_OF_FILES
\
-rowsperrequest
$r
\
-writeclients
$c
\
-conf
$CAS_TEST_DIR
/application.conf"
java
-jar
$CAS_TEST_DIR
/cassandratest/target/cassandratest-1.0-SNAPSHOT-jar-with-dependencies.jar
\
-datadir
$DATA_DIR
\
-numofFiles
$NUM_OF_FILES
\
-rowsperrequest
$r
\
-writeclients
$c
\
-conf
$CAS_TEST_DIR
/application.conf
\
2>&1
>
$OUT_FILE
RPR
=
`
cat
$OUT_FILE
|
grep
"insertation speed:"
|
awk
'{print $(NF-1)}'
`
totalRPR
=
`
echo
"scale=4;
$totalRPR
+
$RPR
"
| bc
`
printTo
"rows:
$r
, clients:
$c
, i:
$i
RPR:
$RPR
"
done
avgRPR[
$c
]=
`
echo
"scale=4;
$totalRPR
/
$NUM_LOOP
"
| bc
`
done
for
c
in
`
seq
1
$clients
`
;
do
printf
"
${
avgRPR
[
$c
]
}
, "
done
printf
"
\n
"
done
}
################ Main ################
verbose
=
false
clients
=
1
while
:
;
do
case
$1
in
-v
)
verbose
=
true
shift
;;
-c
)
clients
=
$2
shift
2
;;
*
)
break
;;
esac
done
printTo
"Cassandra Test begin.."
WORK_DIR
=
/mnt/root/TDengine
CAS_TEST_DIR
=
$WORK_DIR
/tests/comparisonTest/cassandra
runTest
printTo
"Cassandra Test done!"
tests/pytest/fulltest.sh
浏览文件 @
59962fed
...
...
@@ -162,6 +162,7 @@ python3 ./test.py -f client/client.py
# Misc
python3 testCompress.py
python3 testNoCompress.py
python3 testMinTablesPerVnode.py
# functions
python3 ./test.py
-f
functions/function_avg.py
...
...
@@ -180,4 +181,4 @@ python3 ./test.py -f functions/function_spread.py
python3 ./test.py
-f
functions/function_stddev.py
python3 ./test.py
-f
functions/function_sum.py
python3 ./test.py
-f
functions/function_top.py
python3 ./test.py
-f
functions/function_twa.py
\ No newline at end of file
python3 ./test.py
-f
functions/function_twa.py
tests/pytest/subscribe/__init__.py
0 → 100644
浏览文件 @
59962fed
tests/pytest/subscribe/singlemeter.py
0 → 100644
浏览文件 @
59962fed
###################################################################
# Copyright (c) 2020 by TAOS Technologies, Inc.
# All rights reserved.
#
# This file is proprietary and confidential to TAOS Technologies.
# No part of this file may be reproduced, stored, transmitted,
# disclosed or used in any form or by any means other than as
# expressly provided by the written permission from Jianhui Tao
#
###################################################################
# -*- coding: utf-8 -*-
import
sys
import
taos
import
time
from
util.log
import
*
from
util.cases
import
*
from
util.sql
import
*
from
util.sub
import
*
class
TDTestCase
:
def
init
(
self
,
conn
,
logSql
):
tdLog
.
debug
(
"start to execute %s"
%
__file__
)
tdSql
.
init
(
conn
.
cursor
(),
logSql
)
self
.
conn
=
conn
def
run
(
self
):
sqlstr
=
"select * from t0"
topic
=
"test"
now
=
int
(
time
.
time
()
*
1000
)
tdSql
.
prepare
()
tdLog
.
info
(
"create a table and insert 10 rows."
)
tdSql
.
execute
(
"create table t0(ts timestamp, a int, b int);"
)
for
i
in
range
(
0
,
10
):
tdSql
.
execute
(
"insert into t0 values (%d, %d, %d);"
%
(
now
+
i
,
i
,
i
))
tdLog
.
info
(
"consumption 01."
)
tdSub
.
init
(
self
.
conn
.
subscribe
(
True
,
topic
,
sqlstr
,
0
))
tdSub
.
consume
()
tdSub
.
checkRows
(
10
)
tdLog
.
info
(
"consumption 02: no new rows inserted"
)
tdSub
.
consume
()
tdSub
.
checkRows
(
0
)
tdLog
.
info
(
"consumption 03: after one new rows inserted"
)
tdSql
.
execute
(
"insert into t0 values (%d, 10, 10);"
%
(
now
+
10
))
tdSub
.
consume
()
tdSub
.
checkRows
(
1
)
tdLog
.
info
(
"consumption 04: keep progress and continue previous subscription"
)
tdSub
.
close
(
True
)
tdSub
.
init
(
self
.
conn
.
subscribe
(
False
,
topic
,
sqlstr
,
0
))
tdSub
.
consume
()
tdSub
.
checkRows
(
0
)
tdLog
.
info
(
"consumption 05: remove progress and continue previous subscription"
)
tdSub
.
close
(
False
)
tdSub
.
init
(
self
.
conn
.
subscribe
(
False
,
topic
,
sqlstr
,
0
))
tdSub
.
consume
()
tdSub
.
checkRows
(
11
)
tdLog
.
info
(
"consumption 06: keep progress and restart the subscription"
)
tdSub
.
close
(
True
)
tdSub
.
init
(
self
.
conn
.
subscribe
(
True
,
topic
,
sqlstr
,
0
))
tdSub
.
consume
()
tdSub
.
checkRows
(
11
)
tdSub
.
close
(
True
)
def
stop
(
self
):
tdSub
.
close
(
False
)
tdSql
.
close
()
tdLog
.
success
(
"%s successfully executed"
%
__file__
)
tdCases
.
addWindows
(
__file__
,
TDTestCase
())
tdCases
.
addLinux
(
__file__
,
TDTestCase
())
tests/pytest/subscribe/supertable.py
0 → 100644
浏览文件 @
59962fed
###################################################################
# Copyright (c) 2020 by TAOS Technologies, Inc.
# All rights reserved.
#
# This file is proprietary and confidential to TAOS Technologies.
# No part of this file may be reproduced, stored, transmitted,
# disclosed or used in any form or by any means other than as
# expressly provided by the written permission from Jianhui Tao
#
###################################################################
# -*- coding: utf-8 -*-
import
sys
import
taos
import
time
from
util.log
import
*
from
util.cases
import
*
from
util.sql
import
*
from
util.sub
import
*
class
TDTestCase
:
def
init
(
self
,
conn
,
logSql
):
tdLog
.
debug
(
"start to execute %s"
%
__file__
)
tdSql
.
init
(
conn
.
cursor
(),
logSql
)
self
.
conn
=
conn
def
run
(
self
):
sqlstr
=
"select * from meters"
topic
=
"test"
now
=
int
(
time
.
time
()
*
1000
)
tdSql
.
prepare
()
tdLog
.
info
(
"create a super table and 10 sub-tables, then insert 5 rows into each sub-table."
)
tdSql
.
execute
(
"create table meters(ts timestamp, a int, b int) tags(area int, loc binary(20));"
)
for
i
in
range
(
0
,
10
):
for
j
in
range
(
0
,
5
):
tdSql
.
execute
(
"insert into t%d using meters tags(%d, 'area%d') values (%d, %d, %d);"
%
(
i
,
i
,
i
,
now
+
j
,
j
,
j
))
tdLog
.
info
(
"consumption 01."
)
tdSub
.
init
(
self
.
conn
.
subscribe
(
True
,
topic
,
sqlstr
,
0
))
tdSub
.
consume
()
tdSub
.
checkRows
(
50
)
tdLog
.
info
(
"consumption 02: no new rows inserted"
)
tdSub
.
consume
()
tdSub
.
checkRows
(
0
)
tdLog
.
info
(
"consumption 03: after one new rows inserted"
)
tdSql
.
execute
(
"insert into t0 values (%d, 10, 10);"
%
(
now
+
10
))
tdSub
.
consume
()
tdSub
.
checkRows
(
1
)
tdLog
.
info
(
"consumption 04: keep progress and continue previous subscription"
)
tdSub
.
close
(
True
)
tdSub
.
init
(
self
.
conn
.
subscribe
(
False
,
topic
,
sqlstr
,
0
))
tdSub
.
consume
()
tdSub
.
checkRows
(
0
)
tdLog
.
info
(
"consumption 05: remove progress and continue previous subscription"
)
tdSub
.
close
(
False
)
tdSub
.
init
(
self
.
conn
.
subscribe
(
False
,
topic
,
sqlstr
,
0
))
tdSub
.
consume
()
tdSub
.
checkRows
(
51
)
tdLog
.
info
(
"consumption 06: keep progress and restart the subscription"
)
tdSub
.
close
(
True
)
tdSub
.
init
(
self
.
conn
.
subscribe
(
True
,
topic
,
sqlstr
,
0
))
tdSub
.
consume
()
tdSub
.
checkRows
(
51
)
tdLog
.
info
(
"consumption 07: insert one row to two table then remove one table"
)
tdSql
.
execute
(
"insert into t0 values (%d, 11, 11);"
%
(
now
+
11
))
tdSql
.
execute
(
"insert into t1 values (%d, 11, 11);"
%
(
now
+
11
))
tdSql
.
execute
(
"drop table t0"
)
tdSub
.
consume
()
tdSub
.
checkRows
(
1
)
tdLog
.
info
(
"consumption 08: check timestamp criteria"
)
tdSub
.
close
(
False
)
tdSub
.
init
(
self
.
conn
.
subscribe
(
True
,
topic
,
sqlstr
+
" where ts > %d"
%
now
,
0
))
tdSub
.
consume
()
tdSub
.
checkRows
(
37
)
tdLog
.
info
(
"consumption 09: insert large timestamp to t2 then insert smaller timestamp to t1"
)
tdSql
.
execute
(
"insert into t2 values (%d, 100, 100);"
%
(
now
+
100
))
tdSub
.
consume
()
tdSub
.
checkRows
(
1
)
tdSql
.
execute
(
"insert into t1 values (%d, 12, 12);"
%
(
now
+
12
))
tdSub
.
consume
()
tdSub
.
checkRows
(
1
)
tdLog
.
info
(
"consumption 10: field criteria"
)
tdSub
.
close
(
True
)
tdSub
.
init
(
self
.
conn
.
subscribe
(
False
,
topic
,
sqlstr
+
" where a > 100"
,
0
))
tdSql
.
execute
(
"insert into t2 values (%d, 101, 100);"
%
(
now
+
101
))
tdSql
.
execute
(
"insert into t2 values (%d, 100, 100);"
%
(
now
+
102
))
tdSql
.
execute
(
"insert into t2 values (%d, 102, 100);"
%
(
now
+
103
))
tdSub
.
consume
()
tdSub
.
checkRows
(
2
)
tdLog
.
info
(
"consumption 11: two vnodes"
)
tdSql
.
execute
(
"insert into t2 values (%d, 102, 100);"
%
(
now
+
104
))
tdSql
.
execute
(
"insert into t9 values (%d, 102, 100);"
%
(
now
+
104
))
tdSub
.
consume
()
tdSub
.
checkRows
(
2
)
def
stop
(
self
):
tdSub
.
close
(
False
)
tdSql
.
close
()
tdLog
.
success
(
"%s successfully executed"
%
__file__
)
tdCases
.
addWindows
(
__file__
,
TDTestCase
())
tdCases
.
addLinux
(
__file__
,
TDTestCase
())
tests/pytest/test.sh
0 → 100755
浏览文件 @
59962fed
EXEC_DIR
=
`
dirname
"
$0
"
`
if
[[
$EXEC_DIR
!=
"."
]]
then
echo
"ERROR: Please execute
`
basename
"
$0
"
`
in its own directory (for now anyway, pardon the dust)"
exit
-1
fi
CURR_DIR
=
`
pwd
`
IN_TDINTERNAL
=
"community"
if
[[
"
$CURR_DIR
"
==
*
"
$IN_TDINTERNAL
"
*
]]
;
then
TAOS_DIR
=
$CURR_DIR
/../../..
else
TAOS_DIR
=
$CURR_DIR
/../..
fi
TAOSD_DIR
=
`
find
$TAOS_DIR
-name
"taosd"
|grep bin|head
-n1
`
LIB_DIR
=
`
echo
$TAOSD_DIR
|rev|cut
-d
'/'
-f
3,4,5,6|rev
`
/lib
export
PYTHONPATH
=
$(
pwd
)
/../../src/connector/python/linux/python3
export
LD_LIBRARY_PATH
=
$LD_LIBRARY_PATH
:
$LIB_DIR
if
[[
"
$1
"
==
*
"test.py"
*
]]
;
then
python3 ./test.py
$@
else
python3
$1
$@
fi
tests/pytest/testMinTablesPerVnode.py
0 → 100644
浏览文件 @
59962fed
#!/usr/bin/python
###################################################################
# Copyright (c) 2016 by TAOS Technologies, Inc.
# All rights reserved.
#
# This file is proprietary and confidential to TAOS Technologies.
# No part of this file may be reproduced, stored, transmitted,
# disclosed or used in any form or by any means other than as
# expressly provided by the written permission from Jianhui Tao
#
###################################################################
# install pip
# pip install src/connector/python/linux/python2/
# -*- coding: utf-8 -*-
import
sys
import
getopt
import
subprocess
from
distutils.log
import
warn
as
printf
from
util.log
import
*
from
util.dnodes
import
*
from
util.cases
import
*
from
util.sql
import
*
import
taos
if
__name__
==
"__main__"
:
fileName
=
"all"
deployPath
=
""
testCluster
=
False
valgrind
=
0
logSql
=
True
stop
=
0
opts
,
args
=
getopt
.
gnu_getopt
(
sys
.
argv
[
1
:],
'l:sgh'
,
[
'logSql'
,
'stop'
,
'valgrind'
,
'help'
])
for
key
,
value
in
opts
:
if
key
in
[
'-h'
,
'--help'
]:
tdLog
.
printNoPrefix
(
'A collection of test cases written using Python'
)
tdLog
.
printNoPrefix
(
'-l <True:False> logSql Flag'
)
tdLog
.
printNoPrefix
(
'-s stop All dnodes'
)
tdLog
.
printNoPrefix
(
'-g valgrind Test Flag'
)
sys
.
exit
(
0
)
if
key
in
[
'-l'
,
'--logSql'
]:
if
(
value
.
upper
()
==
"TRUE"
):
logSql
=
True
elif
(
value
.
upper
()
==
"FALSE"
):
logSql
=
False
else
:
tdLog
.
printNoPrefix
(
"logSql value %s is invalid"
%
logSql
)
sys
.
exit
(
0
)
if
key
in
[
'-g'
,
'--valgrind'
]:
valgrind
=
1
if
key
in
[
'-s'
,
'--stop'
]:
stop
=
1
if
(
stop
!=
0
):
if
(
valgrind
==
0
):
toBeKilled
=
"taosd"
else
:
toBeKilled
=
"valgrind.bin"
killCmd
=
"ps -ef|grep -w %s| grep -v grep | awk '{print $2}' | xargs kill -HUP > /dev/null 2>&1"
%
toBeKilled
psCmd
=
"ps -ef|grep -w %s| grep -v grep | awk '{print $2}'"
%
toBeKilled
processID
=
subprocess
.
check_output
(
psCmd
,
shell
=
True
)
while
(
processID
):
os
.
system
(
killCmd
)
time
.
sleep
(
1
)
processID
=
subprocess
.
check_output
(
psCmd
,
shell
=
True
)
for
port
in
range
(
6030
,
6041
):
usePortPID
=
"lsof -i tcp:%d | grep LISTEn | awk '{print $2}'"
%
port
processID
=
subprocess
.
check_output
(
usePortPID
,
shell
=
True
)
if
processID
:
killCmd
=
"kill -TERM %s"
%
processID
os
.
system
(
killCmd
)
fuserCmd
=
"fuser -k -n tcp %d"
%
port
os
.
system
(
fuserCmd
)
if
valgrind
:
time
.
sleep
(
2
)
tdLog
.
info
(
'stop All dnodes'
)
sys
.
exit
(
0
)
tdDnodes
.
init
(
deployPath
)
tdDnodes
.
setTestCluster
(
testCluster
)
tdDnodes
.
setValgrind
(
valgrind
)
tdDnodes
.
stopAll
()
tdDnodes
.
addSimExtraCfg
(
"minTablesPerVnode"
,
"100"
)
tdDnodes
.
deploy
(
1
)
tdDnodes
.
start
(
1
)
host
=
'127.0.0.1'
tdLog
.
info
(
"Procedures for tdengine deployed in %s"
%
(
host
))
tdCases
.
logSql
(
logSql
)
conn
=
taos
.
connect
(
host
,
config
=
tdDnodes
.
getSimCfgPath
())
tdSql
.
init
(
conn
.
cursor
(),
True
)
tdSql
.
execute
(
"DROP DATABASE IF EXISTS db"
)
tdSql
.
execute
(
"CREATE DATABASE IF NOT EXISTS db"
)
tdSql
.
execute
(
"USE db"
)
for
i
in
range
(
0
,
100
):
tdSql
.
execute
(
"CREATE TABLE IF NOT EXISTS tb%d (ts TIMESTAMP, temperature INT, humidity FLOAT)"
%
i
)
for
i
in
range
(
1
,
6
):
tdSql
.
execute
(
"INSERT INTO tb99 values (now + %da, %d, %f)"
%
(
i
,
i
,
i
*
1.0
))
tdSql
.
execute
(
"DROP TABLE tb99"
)
tdSql
.
execute
(
"CREATE TABLE IF NOT EXISTS tb99 (ts TIMESTAMP, temperature INT, humidity FLOAT)"
)
tdSql
.
query
(
"SELECT * FROM tb99"
)
tdSql
.
checkRows
(
0
)
conn
.
close
()
tests/pytest/util/dnodes.py
浏览文件 @
59962fed
...
...
@@ -351,7 +351,7 @@ class TDDnodes:
psCmd
=
"ps -ef|grep -w taosd| grep -v grep | awk '{print $2}'"
processID
=
subprocess
.
check_output
(
psCmd
,
shell
=
True
).
decode
(
"utf-8"
)
while
(
processID
):
killCmd
=
"kill -
KILL
%s > /dev/null 2>&1"
%
processID
killCmd
=
"kill -
TERM
%s > /dev/null 2>&1"
%
processID
os
.
system
(
killCmd
)
time
.
sleep
(
1
)
processID
=
subprocess
.
check_output
(
...
...
@@ -360,7 +360,7 @@ class TDDnodes:
psCmd
=
"ps -ef|grep -w valgrind.bin| grep -v grep | awk '{print $2}'"
processID
=
subprocess
.
check_output
(
psCmd
,
shell
=
True
).
decode
(
"utf-8"
)
while
(
processID
):
killCmd
=
"kill -
KILL
%s > /dev/null 2>&1"
%
processID
killCmd
=
"kill -
TERM
%s > /dev/null 2>&1"
%
processID
os
.
system
(
killCmd
)
time
.
sleep
(
1
)
processID
=
subprocess
.
check_output
(
...
...
@@ -467,7 +467,7 @@ class TDDnodes:
psCmd
=
"ps -ef|grep -w taosd| grep -v grep | awk '{print $2}'"
processID
=
subprocess
.
check_output
(
psCmd
,
shell
=
True
).
decode
(
"utf-8"
)
while
(
processID
):
killCmd
=
"kill -
KILL
%s > /dev/null 2>&1"
%
processID
killCmd
=
"kill -
TERM
%s > /dev/null 2>&1"
%
processID
os
.
system
(
killCmd
)
time
.
sleep
(
1
)
processID
=
subprocess
.
check_output
(
...
...
@@ -476,7 +476,7 @@ class TDDnodes:
psCmd
=
"ps -ef|grep -w valgrind.bin| grep -v grep | awk '{print $2}'"
processID
=
subprocess
.
check_output
(
psCmd
,
shell
=
True
).
decode
(
"utf-8"
)
while
(
processID
):
killCmd
=
"kill -
KILL
%s > /dev/null 2>&1"
%
processID
killCmd
=
"kill -
TERM
%s > /dev/null 2>&1"
%
processID
os
.
system
(
killCmd
)
time
.
sleep
(
1
)
processID
=
subprocess
.
check_output
(
...
...
tests/pytest/util/sub.py
0 → 100644
浏览文件 @
59962fed
###################################################################
# Copyright (c) 2020 by TAOS Technologies, Inc.
# All rights reserved.
#
# This file is proprietary and confidential to TAOS Technologies.
# No part of this file may be reproduced, stored, transmitted,
# disclosed or used in any form or by any means other than as
# expressly provided by the written permission from Jianhui Tao
#
###################################################################
# -*- coding: utf-8 -*-
import
sys
import
os
import
time
import
datetime
from
util.log
import
*
class
TDSub
:
def
__init__
(
self
):
self
.
consumedRows
=
0
self
.
consumedCols
=
0
def
init
(
self
,
sub
):
self
.
sub
=
sub
def
close
(
self
,
keepProgress
):
self
.
sub
.
close
(
keepProgress
)
def
consume
(
self
):
self
.
data
=
self
.
sub
.
consume
()
self
.
consumedRows
=
len
(
self
.
data
)
self
.
consumedCols
=
len
(
self
.
sub
.
fields
)
return
self
.
consumedRows
def
checkRows
(
self
,
expectRows
):
if
self
.
consumedRows
!=
expectRows
:
tdLog
.
exit
(
"consumed rows:%d != expect:%d"
%
(
self
.
consumedRows
,
expectRows
))
tdLog
.
info
(
"consumed rows:%d == expect:%d"
%
(
self
.
consumedRows
,
expectRows
))
tdSub
=
TDSub
()
tests/script/general/parser/stream_on_sys.sim
浏览文件 @
59962fed
...
...
@@ -28,7 +28,7 @@ sql create table diskstrm as select count(*), avg(disk_used), last(disk_used), a
sql create table bandstrm as select count(*), avg(band_speed), last(band_speed) from log.dn1 interval(4s) sliding(2s)
sql create table reqstrm as select count(*), avg(req_http), last(req_http), avg(req_select), last(req_select), avg(req_insert), last(req_insert) from log.dn1 interval(4s) sliding(2s)
sql create table iostrm as select count(*), avg(io_read), last(io_read), avg(io_write), last(io_write) from log.dn1 interval(4s) sliding(2s)
sleep 20000
sleep
1
20000
sql select * from cpustrm
if $rows <= 0 then
return -1
...
...
tests/script/jenkins/basic.txt
浏览文件 @
59962fed
...
...
@@ -249,6 +249,7 @@ cd ../../../debug; make
./test.sh -f unique/big/maxvnodes.sim
./test.sh -f unique/big/tcp.sim
./test.sh -f unique/cluster/alter.sim
./test.sh -f unique/cluster/balance1.sim
./test.sh -f unique/cluster/balance2.sim
./test.sh -f unique/cluster/balance3.sim
...
...
@@ -309,13 +310,10 @@ cd ../../../debug; make
./test.sh -f unique/vnode/replica3_repeat.sim
./test.sh -f unique/vnode/replica3_vgroup.sim
# stream still has bugs
#./test.sh -f general/parser/stream_on_sys.sim
#./test.sh -f general/parser/repeatStream.sim
#./test.sh -f general/stream/metrics_del.sim
./test.sh -f general/parser/stream_on_sys.sim
./test.sh -f general/stream/metrics_del.sim
./test.sh -f general/stream/metrics_n.sim
#
./test.sh -f general/stream/metrics_replica1_vnoden.sim
./test.sh -f general/stream/metrics_replica1_vnoden.sim
./test.sh -f general/stream/restart_stream.sim
./test.sh -f general/stream/stream_3.sim
./test.sh -f general/stream/stream_restart.sim
...
...
@@ -327,13 +325,12 @@ cd ../../../debug; make
./test.sh -f unique/arbitrator/check_cluster_cfg_para.sim
#./test.sh -f unique/arbitrator/dn2_mn1_cache_file_sync.sim
./test.sh -f unique/arbitrator/dn3_mn1_full_createTableFail.sim
./test.sh -f unique/arbitrator/dn3_mn1_full_dropDnodeFail.sim
./test.sh -f unique/arbitrator/dn3_mn1_multiCreateDropTable.sim
./test.sh -f unique/arbitrator/dn3_mn1_nw_disable_timeout_autoDropDnode.sim
./test.sh -f unique/arbitrator/dn3_mn1_replica2_wal1_AddDelDnode.sim
#
./test.sh -f unique/arbitrator/dn3_mn1_nw_disable_timeout_autoDropDnode.sim
#
./test.sh -f unique/arbitrator/dn3_mn1_replica2_wal1_AddDelDnode.sim
./test.sh -f unique/arbitrator/dn3_mn1_replica_change_dropDnod.sim
./test.sh -f unique/arbitrator/dn3_mn1_replica_change.sim
./test.sh -f unique/arbitrator/dn3_mn1_stopDnode_timeout.sim
#
./test.sh -f unique/arbitrator/dn3_mn1_stopDnode_timeout.sim
# lower the priority while file corruption
#./test.sh -f unique/arbitrator/dn3_mn1_vnode_change.sim
#./test.sh -f unique/arbitrator/dn3_mn1_vnode_corruptFile_offline.sim
...
...
tests/script/sh/deploy.sh
浏览文件 @
59962fed
...
...
@@ -125,7 +125,7 @@ echo "mqttDebugFlag 135" >> $TAOS_CFG
echo
"qdebugFlag 135"
>>
$TAOS_CFG
echo
"rpcDebugFlag 135"
>>
$TAOS_CFG
echo
"tmrDebugFlag 131"
>>
$TAOS_CFG
echo
"udebugFlag 1
43
"
>>
$TAOS_CFG
echo
"udebugFlag 1
35
"
>>
$TAOS_CFG
echo
"sdebugFlag 135"
>>
$TAOS_CFG
echo
"wdebugFlag 135"
>>
$TAOS_CFG
echo
"monitor 0"
>>
$TAOS_CFG
...
...
tests/script/tmp/mnodes.sim
浏览文件 @
59962fed
...
...
@@ -4,10 +4,6 @@ system sh/deploy.sh -n dnode1 -i 1
system sh/deploy.sh -n dnode2 -i 2
system sh/deploy.sh -n dnode3 -i 3
system sh/cfg.sh -n dnode1 -c 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 dnode1 -c numOfMnodes -v 3
system sh/cfg.sh -n dnode2 -c numOfMnodes -v 3
system sh/cfg.sh -n dnode3 -c numOfMnodes -v 3
...
...
@@ -16,64 +12,28 @@ system sh/cfg.sh -n dnode1 -c mnodeEqualVnodeNum -v 4
system sh/cfg.sh -n dnode2 -c mnodeEqualVnodeNum -v 4
system sh/cfg.sh -n dnode3 -c mnodeEqualVnodeNum -v 4
system sh/cfg.sh -n dnode1 -c http -v 1
system sh/cfg.sh -n dnode2 -c http -v 1
system sh/cfg.sh -n dnode3 -c http -v 1
system sh/cfg.sh -n dnode1 -c mDebugFlag -v 143
system sh/cfg.sh -n dnode2 -c mDebugFlag -v 143
system sh/cfg.sh -n dnode3 -c mDebugFlag -v 143
system sh/cfg.sh -n dnode1 -c sdbDebugFlag -v 143
system sh/cfg.sh -n dnode2 -c sdbDebugFlag -v 143
system sh/cfg.sh -n dnode3 -c sdbDebugFlag -v 143
system sh/cfg.sh -n dnode1 -c sdebugFlag -v 143
system sh/cfg.sh -n dnode2 -c sdebugFlag -v 143
system sh/cfg.sh -n dnode3 -c sdebugFlag -v 143
system sh/cfg.sh -n dnode1 -c rpcDebugFlag -v 135
system sh/cfg.sh -n dnode2 -c rpcDebugFlag -v 135
system sh/cfg.sh -n dnode3 -c rpcDebugFlag -v 135
system sh/cfg.sh -n dnode1 -c tsdbDebugFlag -v 131
system sh/cfg.sh -n dnode2 -c tsdbDebugFlag -v 131
system sh/cfg.sh -n dnode3 -c tsdbDebugFlag -v 131
system sh/cfg.sh -n dnode1 -c mqttDebugFlag -v 131
system sh/cfg.sh -n dnode2 -c mqttDebugFlag -v 131
system sh/cfg.sh -n dnode3 -c mqttDebugFlag -v 131
system sh/cfg.sh -n dnode1 -c qdebugFlag -v 131
system sh/cfg.sh -n dnode2 -c qdebugFlag -v 131
system sh/cfg.sh -n dnode3 -c qdebugFlag -v 131
system sh/cfg.sh -n dnode1 -c cDebugFlag -v 135
system sh/cfg.sh -n dnode2 -c cDebugFlag -v 135
system sh/cfg.sh -n dnode3 -c cDebugFlag -v 135
system sh/cfg.sh -n dnode1 -c udebugFlag -v 131
system sh/cfg.sh -n dnode2 -c udebugFlag -v 131
system sh/cfg.sh -n dnode3 -c udebugFlag -v 131
system sh/cfg.sh -n dnode1 -c http -v 0
system sh/cfg.sh -n dnode2 -c http -v 0
system sh/cfg.sh -n dnode3 -c http -v 0
system sh/cfg.sh -n dnode1 -c
wdebugFlag -v 131
system sh/cfg.sh -n dnode2 -c
wdebugFlag -v 131
system sh/cfg.sh -n dnode3 -c
wdebugFlag -v 131
system sh/cfg.sh -n dnode1 -c
maxTablesPerVnode -v 20000
system sh/cfg.sh -n dnode2 -c
maxTablesPerVnode -v 20000
system sh/cfg.sh -n dnode3 -c
maxTablesPerVnode -v 20000
system sh/cfg.sh -n dnode1 -c
maxTablesPerVnode -v 1000000
system sh/cfg.sh -n dnode2 -c
maxTablesPerVnode -v 1000000
system sh/cfg.sh -n dnode3 -c
maxTablesPerVnode -v 1000000
system sh/cfg.sh -n dnode1 -c
replica -v 3
system sh/cfg.sh -n dnode2 -c
replica -v 3
system sh/cfg.sh -n dnode3 -c
replica -v 3
print ============== deploy
system sh/exec.sh -n dnode1 -s start
sleep
2
001
system sh/exec.sh -n dnode1 -s start
sleep
5
001
sql connect
sql create dnode $hostname2
sql create dnode $hostname3
system sh/exec.sh -n dnode2 -s start
system sh/exec.sh -n dnode3 -s start
system sh/exec.sh -n dnode2 -s start
system sh/exec.sh -n dnode3 -s start
print =============== step1
$x = 0
...
...
@@ -112,8 +72,8 @@ print $data0_3 $data2_3
$x = $x + 1
sleep
2
000
if $x == 1000 then
sleep
5
000
if $x == 1000
00
then
return -1
endi
...
...
tests/script/unique/arbitrator/dn3_mn1_r2_vnode_delDir.sim
浏览文件 @
59962fed
...
...
@@ -137,8 +137,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_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
$dnode3Vtatus = $data
6
_2
$dnode2Vtatus = $data
9
_2
$dnode3Vtatus = $data
5
_2
$dnode2Vtatus = $data
7
_2
if $dnode3Vtatus != offline then
sleep 2000
...
...
@@ -204,8 +204,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_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
$dnode3Vtatus = $data
6
_2
$dnode2Vtatus = $data
9
_2
$dnode3Vtatus = $data
5
_2
$dnode2Vtatus = $data
7
_2
print dnode2Vtatus: $dnode3Vtatus
print dnode3Vtatus: $dnode3Vtatus
...
...
@@ -319,8 +319,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_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
$dnode3Vtatus = $data
6
_2
$dnode2Vtatus = $data
9
_2
$dnode3Vtatus = $data
5
_2
$dnode2Vtatus = $data
7
_2
print dnode4Vtatus: $dnode4Vtatus
print dnode3Vtatus: $dnode3Vtatus
...
...
tests/script/unique/arbitrator/dn3_mn1_r3_vnode_delDir.sim
浏览文件 @
59962fed
...
...
@@ -139,8 +139,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != offline then
sleep 2000
...
...
@@ -206,8 +206,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
print dnode4Vtatus: $dnode4Vtatus
print dnode3Vtatus: $dnode3Vtatus
...
...
@@ -325,8 +325,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
print dnode4Vtatus: $dnode4Vtatus
print dnode3Vtatus: $dnode3Vtatus
...
...
@@ -386,8 +386,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
print dnode4Vtatus: $dnode4Vtatus
print dnode3Vtatus: $dnode3Vtatus
...
...
tests/script/unique/arbitrator/dn3_mn1_replica_change.sim
浏览文件 @
59962fed
...
...
@@ -358,10 +358,10 @@ print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3 $data5_3 $data6_3 $dat
print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4 $data5_4 $data6_4 $data7_4 $data8_4 $data9_4 $data10_4
#print $data0_5 $data1_5 $data2_5 $data3_5 $data4_5
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
$thirdDnode_2 = $data
10
_1
$thirdDnode_3 = $data
10
_2
$thirdDnode_4 = $data
10
_3
$thirdDnode_5 = $data
10
_4
$thirdDnode_2 = $data
8
_1
$thirdDnode_3 = $data
8
_2
$thirdDnode_4 = $data
8
_3
$thirdDnode_5 = $data
8
_4
if $thirdDnode_2 != null then
sleep 2000
...
...
@@ -405,10 +405,10 @@ print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3 $data5_3 $data6_3 $dat
print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4 $data5_4 $data6_4 $data7_4 $data8_4
#print $data0_5 $data1_5 $data2_5 $data3_5 $data4_5
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
$sencodDnode_2 = $data
7
_1
$sencodDnode_3 = $data
7
_2
$sencodDnode_4 = $data
7
_3
$sencodDnode_5 = $data
7
_4
$sencodDnode_2 = $data
6
_1
$sencodDnode_3 = $data
6
_2
$sencodDnode_4 = $data
6
_3
$sencodDnode_5 = $data
6
_4
if $sencodDnode_2 != null then
sleep 2000
...
...
tests/script/unique/arbitrator/dn3_mn1_vnode_change.sim
浏览文件 @
59962fed
...
...
@@ -138,8 +138,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != offline then
sleep 2000
...
...
@@ -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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
print dnode4Vtatus: $dnode4Vtatus
print dnode3Vtatus: $dnode3Vtatus
...
...
@@ -287,8 +287,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
print dnode4Vtatus: $dnode4Vtatus
print dnode3Vtatus: $dnode3Vtatus
...
...
tests/script/unique/arbitrator/dn3_mn1_vnode_corruptFile_offline.sim
浏览文件 @
59962fed
...
...
@@ -144,8 +144,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_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
$dnode3Vtatus = $data
6
_2
$dnode2Vtatus = $data
9
_2
$dnode3Vtatus = $data
5
_2
$dnode2Vtatus = $data
7
_2
if $dnode3Vtatus != offline then
sleep 2000
...
...
@@ -234,8 +234,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_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
$dnode2Vtatus = $data
9
_2
$dnode3Vtatus = $data
6
_2
$dnode2Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode2Vtatus != master then
sleep 2000
...
...
@@ -313,8 +313,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_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
$dnode2Vtatus = $data
9
_2
$dnode3Vtatus = $data
6
_2
$dnode2Vtatus = $data
7
_2
$dnode3Vtatus = $data
5
_2
if $dnode2Vtatus != offline then
sleep 2000
...
...
@@ -393,8 +393,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_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
$dnode2Vtatus = $data
9
_2
$dnode3Vtatus = $data
6
_2
$dnode2Vtatus = $data
7
_2
$dnode3Vtatus = $data
5
_2
if $dnode2Vtatus == offline then
sleep 2000
...
...
tests/script/unique/arbitrator/dn3_mn1_vnode_corruptFile_online.sim
浏览文件 @
59962fed
...
...
@@ -196,8 +196,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_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
$dnode2Vtatus = $data
9
_2
$dnode3Vtatus = $data
6
_2
$dnode2Vtatus = $data
7
_2
$dnode3Vtatus = $data
5
_2
if $dnode2Vtatus != offline then
sleep 2000
...
...
@@ -269,8 +269,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_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
$dnode2Vtatus = $data
9
_2
$dnode3Vtatus = $data
6
_2
$dnode2Vtatus = $data
7
_2
$dnode3Vtatus = $data
5
_2
if $dnode2Vtatus != offline then
sleep 2000
...
...
@@ -325,8 +325,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_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
$dnode2Vtatus = $data
9
_2
$dnode3Vtatus = $data
6
_2
$dnode2Vtatus = $data
7
_2
$dnode3Vtatus = $data
5
_2
if $dnode2Vtatus != slave then
sleep 2000
...
...
tests/script/unique/arbitrator/dn3_mn1_vnode_createErrData_online.sim
浏览文件 @
59962fed
...
...
@@ -158,8 +158,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_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
$dnode2Vtatus = $data
9
_2
$dnode3Vtatus = $data
6
_2
$dnode2Vtatus = $data
7
_2
$dnode3Vtatus = $data
5
_2
if $dnode2Vtatus != offline then
sleep 2000
...
...
@@ -231,8 +231,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_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
$dnode2Vtatus = $data
9
_2
$dnode3Vtatus = $data
6
_2
$dnode2Vtatus = $data
7
_2
$dnode3Vtatus = $data
5
_2
if $dnode2Vtatus != offline then
sleep 2000
...
...
@@ -287,8 +287,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_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
$dnode2Vtatus = $data
9
_2
$dnode3Vtatus = $data
6
_2
$dnode2Vtatus = $data
7
_2
$dnode3Vtatus = $data
5
_2
if $dnode2Vtatus != slave then
sleep 2000
...
...
tests/script/unique/arbitrator/dn3_mn1_vnode_delDir.sim
浏览文件 @
59962fed
...
...
@@ -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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != offline then
sleep 2000
...
...
@@ -201,8 +201,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
print dnode4Vtatus: $dnode4Vtatus
print dnode3Vtatus: $dnode3Vtatus
...
...
@@ -301,8 +301,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
print dnode4Vtatus: $dnode4Vtatus
print dnode3Vtatus: $dnode3Vtatus
...
...
@@ -417,8 +417,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
print dnode4Vtatus: $dnode4Vtatus
print dnode3Vtatus: $dnode3Vtatus
...
...
tests/script/unique/arbitrator/dn3_mn1_vnode_noCorruptFile_offline.sim
浏览文件 @
59962fed
...
...
@@ -144,8 +144,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_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
$dnode3Vtatus = $data
6
_2
$dnode2Vtatus = $data
9
_2
$dnode3Vtatus = $data
5
_2
$dnode2Vtatus = $data
7
_2
if $dnode3Vtatus != offline then
sleep 2000
...
...
@@ -234,8 +234,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_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
$dnode2Vtatus = $data
9
_2
$dnode3Vtatus = $data
6
_2
$dnode2Vtatus = $data
7
_2
$dnode3Vtatus = $data
5
_2
if $dnode2Vtatus != master then
sleep 2000
...
...
@@ -313,8 +313,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_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
$dnode2Vtatus = $data
9
_2
$dnode3Vtatus = $data
6
_2
$dnode2Vtatus = $data
7
_2
$dnode3Vtatus = $data
5
_2
if $dnode2Vtatus != offline then
sleep 2000
...
...
@@ -392,8 +392,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_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
$dnode2Vtatus = $data
9
_2
$dnode3Vtatus = $data
6
_2
$dnode2Vtatus = $data
7
_2
$dnode3Vtatus = $data
5
_2
if $dnode2Vtatus == offline then
sleep 2000
...
...
tests/script/unique/arbitrator/dn3_mn1_vnode_nomaster.sim
浏览文件 @
59962fed
...
...
@@ -151,8 +151,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != offline then
sleep 2000
...
...
@@ -259,8 +259,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_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
$dnode3Vtatus = $data
6
_3
$dnode2Vtatus = $data
9
_3
$dnode3Vtatus = $data
5
_3
$dnode2Vtatus = $data
7
_3
if $dnode3Vtatus != offline then
sleep 2000
...
...
tests/script/unique/arbitrator/offline_replica2_alterTable_online.sim
浏览文件 @
59962fed
...
...
@@ -139,8 +139,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != offline then
sleep 2000
...
...
tests/script/unique/arbitrator/offline_replica2_alterTag_online.sim
浏览文件 @
59962fed
...
...
@@ -143,8 +143,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != offline then
sleep 2000
...
...
tests/script/unique/arbitrator/offline_replica2_createTable_online.sim
浏览文件 @
59962fed
...
...
@@ -143,8 +143,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != offline then
sleep 2000
...
...
tests/script/unique/arbitrator/offline_replica2_dropDb_online.sim
浏览文件 @
59962fed
...
...
@@ -143,8 +143,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != offline then
sleep 2000
...
...
tests/script/unique/arbitrator/offline_replica2_dropTable_online.sim
浏览文件 @
59962fed
...
...
@@ -143,8 +143,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != offline then
sleep 2000
...
...
tests/script/unique/arbitrator/offline_replica3_alterTable_online.sim
浏览文件 @
59962fed
...
...
@@ -143,8 +143,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != offline then
sleep 2000
...
...
tests/script/unique/arbitrator/offline_replica3_alterTag_online.sim
浏览文件 @
59962fed
...
...
@@ -143,8 +143,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != offline then
sleep 2000
...
...
tests/script/unique/arbitrator/offline_replica3_createTable_online.sim
浏览文件 @
59962fed
...
...
@@ -144,8 +144,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != offline then
sleep 2000
...
...
tests/script/unique/arbitrator/offline_replica3_dropDb_online.sim
浏览文件 @
59962fed
...
...
@@ -143,8 +143,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != offline then
sleep 2000
...
...
tests/script/unique/arbitrator/offline_replica3_dropTable_online.sim
浏览文件 @
59962fed
...
...
@@ -143,8 +143,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != offline then
sleep 2000
...
...
tests/script/unique/arbitrator/sync_replica2_alterTable_add.sim
浏览文件 @
59962fed
...
...
@@ -143,8 +143,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != offline then
sleep 2000
...
...
tests/script/unique/arbitrator/sync_replica2_alterTable_drop.sim
浏览文件 @
59962fed
...
...
@@ -143,8 +143,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != offline then
sleep 2000
...
...
tests/script/unique/arbitrator/sync_replica2_dropDb.sim
浏览文件 @
59962fed
...
...
@@ -143,8 +143,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != offline then
sleep 2000
...
...
tests/script/unique/arbitrator/sync_replica2_dropTable.sim
浏览文件 @
59962fed
...
...
@@ -143,8 +143,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != offline then
sleep 2000
...
...
tests/script/unique/arbitrator/sync_replica3_alterTable_add.sim
浏览文件 @
59962fed
...
...
@@ -143,8 +143,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != offline then
sleep 2000
...
...
tests/script/unique/arbitrator/sync_replica3_alterTable_drop.sim
浏览文件 @
59962fed
...
...
@@ -143,8 +143,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != offline then
sleep 2000
...
...
tests/script/unique/arbitrator/sync_replica3_createTable.sim
浏览文件 @
59962fed
...
...
@@ -143,8 +143,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != offline then
sleep 2000
...
...
tests/script/unique/arbitrator/sync_replica3_dnodeChang_DropAddAlterTableDropDb.sim
浏览文件 @
59962fed
...
...
@@ -139,8 +139,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != offline then
sleep 2000
...
...
@@ -207,8 +207,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != slave then
sleep 2000
...
...
@@ -240,8 +240,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != master then
sleep 2000
...
...
@@ -314,8 +314,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != slave then
sleep 2000
...
...
@@ -347,8 +347,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != master then
sleep 2000
...
...
@@ -437,8 +437,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != slave then
sleep 2000
...
...
@@ -470,8 +470,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != master then
sleep 2000
...
...
tests/script/unique/arbitrator/sync_replica3_dropDb.sim
浏览文件 @
59962fed
...
...
@@ -143,8 +143,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != offline then
sleep 2000
...
...
tests/script/unique/arbitrator/sync_replica3_dropTable.sim
浏览文件 @
59962fed
...
...
@@ -143,8 +143,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_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 = $data
6
_2
$dnode3Vtatus = $data
9
_2
$dnode4Vtatus = $data
5
_2
$dnode3Vtatus = $data
7
_2
if $dnode4Vtatus != offline then
sleep 2000
...
...
tests/script/unique/cluster/alter.sim
0 → 100644
浏览文件 @
59962fed
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 role -v 1
system sh/cfg.sh -n dnode2 -c role -v 2
system sh/cfg.sh -n dnode3 -c role -v 2
system sh/cfg.sh -n dnode4 -c role -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 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 balance -v 0
system sh/cfg.sh -n dnode2 -c balance -v 0
system sh/cfg.sh -n dnode3 -c balance -v 0
system sh/cfg.sh -n dnode4 -c balance -v 0
print ========== step1
system sh/exec.sh -n dnode1 -s start
sql connect
sleep 3000
sql create dnode $hostname2
system sh/exec.sh -n dnode2 -s start
sleep 3000
print ========== step2
sql create database d1
sql create table d1.t1 (t timestamp, i int)
sql insert into d1.t1 values(now+1s, 15)
sql insert into d1.t1 values(now+2s, 14)
sql insert into d1.t1 values(now+3s, 13)
sql insert into d1.t1 values(now+4s, 12)
sql insert into d1.t1 values(now+5s, 11)
print ========== step3
sleep 2000
sql create dnode $hostname3
system sh/exec.sh -n dnode3 -s start
sql create dnode $hostname4
system sh/exec.sh -n dnode4 -s start
sql show dnodes
print dnode1 openVnodes $data2_1
print dnode2 openVnodes $data2_2
print dnode3 openVnodes $data2_3
print dnode4 openVnodes $data2_4
if $data2_1 != 0 then
return -1
endi
if $data2_2 != 1 then
return -1
endi
if $data2_3 != 0 then
return -1
endi
if $data2_4 != 0 then
return -1
endi
print ========== step4
sql alter dnode 2 balance "vnode:2-dnode:3"
$x = 0
show4:
$x = $x + 1
sleep 2000
if $x == 10 then
return -1
endi
sql show dnodes
print dnode1 openVnodes $data2_1
print dnode2 openVnodes $data2_2
print dnode3 openVnodes $data2_3
print dnode4 openVnodes $data2_4
if $data2_2 != 0 then
goto show4
endi
if $data2_3 != 1 then
goto show4
endi
if $data2_4 != 0 then
goto show4
endi
print ========== step5
sql alter dnode 3 balance "vnode:2-dnode:4"
$x = 0
show5:
$x = $x + 1
sleep 2000
if $x == 10 then
return -1
endi
sql show dnodes
print dnode1 openVnodes $data2_1
print dnode2 openVnodes $data2_2
print dnode3 openVnodes $data2_3
print dnode4 openVnodes $data2_4
if $data2_2 != 0 then
goto show5
endi
if $data2_3 != 0 then
goto show5
endi
if $data2_4 != 1 then
goto show5
endi
print ========== step6
sql alter dnode 4 balance "vnode:2-dnode:2"
$x = 0
show6:
$x = $x + 1
sleep 2000
if $x == 10 then
return -1
endi
sql show dnodes
print dnode1 openVnodes $data2_1
print dnode2 openVnodes $data2_2
print dnode3 openVnodes $data2_3
print dnode4 openVnodes $data2_4
if $data2_2 != 1 then
goto show6
endi
if $data2_3 != 0 then
goto show6
endi
if $data2_4 != 0 then
goto show6
endi
print ========== step7
sql select * from d1.t1 order by t desc
print $data01 $data11 $data21 $data31 $data41
if $data01 != 11 then
return -1
endi
if $data11 != 12 then
return -1
endi
if $data21 != 13 then
return -1
endi
if $data31 != 14 then
return -1
endi
if $data41 != 15 then
return -1
endi
print ========== step8
sql_error sql alter dnode 4 balance "vnode:2-dnode:5"
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec.sh -n dnode3 -s stop -x SIGINT
system sh/exec.sh -n dnode4 -s stop -x SIGINT
\ No newline at end of file
tests/script/unique/migrate/mn2_vn2_repl2_rmMnodeDir.sim
浏览文件 @
59962fed
...
...
@@ -194,13 +194,13 @@ print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1 $data5_1 $data6_1 $dat
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_4 $data1_4 $data2_4 $data3_4 $data4_4 $data5_4 $data6_4 $data7_4 $data8_4 $data9_4
$d2v2status = $data
6
_4
$d2v3status = $data
6
_2
$d2v4status = $data
6
_3
$d2v2status = $data
5
_4
$d2v3status = $data
5
_2
$d2v4status = $data
5
_3
$d1v2status = $data
9
_4
$d1v3status = $data
9
_2
$d1v4status = $data
9
_3
$d1v2status = $data
7
_4
$d1v3status = $data
7
_2
$d1v4status = $data
7
_3
if $d2v2status != master then
sleep 2000
...
...
tests/script/unique/migrate/mn2_vn2_repl2_rmMnodeVnodeDir.sim
浏览文件 @
59962fed
...
...
@@ -196,13 +196,13 @@ print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1 $data5_1 $data6_1 $dat
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_4 $data1_4 $data2_4 $data3_4 $data4_4 $data5_4 $data6_4 $data7_4 $data8_4 $data9_4
$d2v2status = $data
6
_4
$d2v3status = $data
6
_2
$d2v4status = $data
6
_3
$d2v2status = $data
5
_4
$d2v3status = $data
5
_2
$d2v4status = $data
5
_3
$d1v2status = $data
9
_4
$d1v3status = $data
9
_2
$d1v4status = $data
9
_3
$d1v2status = $data
7
_4
$d1v3status = $data
7
_2
$d1v4status = $data
7
_3
if $d2v2status != master then
sleep 2000
...
...
tests/script/unique/migrate/mn2_vn2_repl2_rmMnodeVnodeDir_stopAll_starAll.sim
浏览文件 @
59962fed
...
...
@@ -161,13 +161,13 @@ print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1 $data5_1 $data6_1 $dat
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_4 $data1_4 $data2_4 $data3_4 $data4_4 $data5_4 $data6_4 $data7_4 $data8_4 $data9_4
$d2v2status = $data
6
_4
$d2v3status = $data
6
_2
$d2v4status = $data
6
_3
$d2v2status = $data
5
_4
$d2v3status = $data
5
_2
$d2v4status = $data
5
_3
$d1v2status = $data
9
_4
$d1v3status = $data
9
_2
$d1v4status = $data
9
_3
$d1v2status = $data
7
_4
$d1v3status = $data
7
_2
$d1v4status = $data
7
_3
if $d2v2status != master then
sleep 2000
...
...
tests/script/unique/migrate/mn2_vn2_repl2_rmVnodeDir.sim
浏览文件 @
59962fed
...
...
@@ -194,13 +194,13 @@ print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1 $data5_1 $data6_1 $dat
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_4 $data1_4 $data2_4 $data3_4 $data4_4 $data5_4 $data6_4 $data7_4 $data8_4 $data9_4
$d2v2status = $data
6
_4
$d2v3status = $data
6
_2
$d2v4status = $data
6
_3
$d2v2status = $data
5
_4
$d2v3status = $data
5
_2
$d2v4status = $data
5
_3
$d1v2status = $data
9
_4
$d1v3status = $data
9
_2
$d1v4status = $data
9
_3
$d1v2status = $data
7
_4
$d1v3status = $data
7
_2
$d1v4status = $data
7
_3
if $d2v2status != master then
sleep 2000
...
...
tests/test/c/CMakeLists.txt
浏览文件 @
59962fed
...
...
@@ -10,8 +10,8 @@ IF ((TD_LINUX_64) OR (TD_LINUX_32 AND TD_ARM))
#add_executable(insertPerTable insertPerTable.c)
#target_link_libraries(insertPerTable taos_static pthread)
#
add_executable(insertPerRow insertPerRow.c)
#
target_link_libraries(insertPerRow taos_static pthread)
add_executable
(
insertPerRow insertPerRow.c
)
target_link_libraries
(
insertPerRow taos_static pthread
)
#add_executable(importOneRow importOneRow.c)
#target_link_libraries(importOneRow taos_static pthread)
...
...
tests/test/c/insertPerRow.c
浏览文件 @
59962fed
...
...
@@ -44,14 +44,16 @@ void createDbAndTable();
void
insertData
();
int32_t
randomData
[
MAX_RANDOM_POINTS
];
int64_t
rowsPerTable
=
10000
;
int64_t
rowsPerTable
=
10000
00000
;
int64_t
pointsPerTable
=
1
;
int64_t
numOfThreads
=
1
;
int64_t
numOfTablesPerThread
=
2
00
;
int64_t
numOfThreads
=
1
0
;
int64_t
numOfTablesPerThread
=
1
00
;
char
dbName
[
32
]
=
"db"
;
char
stableName
[
64
]
=
"st"
;
int32_t
cache
=
16
;
int32_t
tables
=
5000
;
int32_t
cache
=
1
;
int32_t
replica
=
3
;
int32_t
days
=
10
;
int32_t
interval
=
1000
;
int
main
(
int
argc
,
char
*
argv
[])
{
shellParseArgument
(
argc
,
argv
);
...
...
@@ -77,7 +79,7 @@ void createDbAndTable() {
exit
(
1
);
}
sprintf
(
qstr
,
"create database if not exists %s cache %d
maxtables %d"
,
dbName
,
cache
,
table
s
);
sprintf
(
qstr
,
"create database if not exists %s cache %d
replica %d days %d"
,
dbName
,
cache
,
replica
,
day
s
);
pSql
=
taos_query
(
con
,
qstr
);
int32_t
code
=
taos_errno
(
pSql
);
if
(
code
!=
0
)
{
...
...
@@ -239,7 +241,7 @@ void *syncTest(void *param) {
st
=
systemTime
.
tv_sec
*
1000000
+
systemTime
.
tv_usec
;
int64_t
start
=
1430000000000
;
int
64_t
int
erval
=
1000
;
// 1000 ms
interval
=
1000
;
// 1000 ms
char
*
sql
=
qstr
;
char
inserStr
[]
=
"insert into"
;
...
...
@@ -309,10 +311,14 @@ void printHelp() {
printf
(
"%s%s%s%"
PRId64
"
\n
"
,
indent
,
indent
,
"Number of threads to be used, default is "
,
numOfThreads
);
printf
(
"%s%s
\n
"
,
indent
,
"-n"
);
printf
(
"%s%s%s%"
PRId64
"
\n
"
,
indent
,
indent
,
"Number of tables per thread, default is "
,
numOfTablesPerThread
);
printf
(
"%s%s
\n
"
,
indent
,
"-
tables
"
);
printf
(
"%s%s%s%d
\n
"
,
indent
,
indent
,
"Database parameters
tables, default is "
,
tables
);
printf
(
"%s%s
\n
"
,
indent
,
"-
replica
"
);
printf
(
"%s%s%s%d
\n
"
,
indent
,
indent
,
"Database parameters
replica, default is "
,
replica
);
printf
(
"%s%s
\n
"
,
indent
,
"-cache"
);
printf
(
"%s%s%s%d
\n
"
,
indent
,
indent
,
"Database parameters cache, default is "
,
cache
);
printf
(
"%s%s%s%d
\n
"
,
indent
,
indent
,
"Database parameters replica, default is "
,
cache
);
printf
(
"%s%s
\n
"
,
indent
,
"-days"
);
printf
(
"%s%s%s%d
\n
"
,
indent
,
indent
,
"Database parameters days, default is "
,
days
);
printf
(
"%s%s
\n
"
,
indent
,
"-interval"
);
printf
(
"%s%s%s%d
\n
"
,
indent
,
indent
,
"Interval of each rows in ms, default is "
,
interval
);
exit
(
EXIT_SUCCESS
);
}
...
...
@@ -336,10 +342,14 @@ void shellParseArgument(int argc, char *argv[]) {
numOfThreads
=
atoi
(
argv
[
++
i
]);
}
else
if
(
strcmp
(
argv
[
i
],
"-n"
)
==
0
)
{
numOfTablesPerThread
=
atoi
(
argv
[
++
i
]);
}
else
if
(
strcmp
(
argv
[
i
],
"-
tables
"
)
==
0
)
{
tables
=
atoi
(
argv
[
++
i
]);
}
else
if
(
strcmp
(
argv
[
i
],
"-
replica
"
)
==
0
)
{
replica
=
atoi
(
argv
[
++
i
]);
}
else
if
(
strcmp
(
argv
[
i
],
"-cache"
)
==
0
)
{
cache
=
atoi
(
argv
[
++
i
]);
}
else
if
(
strcmp
(
argv
[
i
],
"-days"
)
==
0
)
{
days
=
atoi
(
argv
[
++
i
]);
}
else
if
(
strcmp
(
argv
[
i
],
"-interval"
)
==
0
)
{
interval
=
atoi
(
argv
[
++
i
]);
}
else
{
}
}
...
...
@@ -349,7 +359,7 @@ void shellParseArgument(int argc, char *argv[]) {
pPrint
(
"%snumOfThreads:%"
PRId64
"%s"
,
GREEN
,
numOfThreads
,
NC
);
pPrint
(
"%snumOfTablesPerThread:%"
PRId64
"%s"
,
GREEN
,
numOfTablesPerThread
,
NC
);
pPrint
(
"%scache:%"
PRId32
"%s"
,
GREEN
,
cache
,
NC
);
pPrint
(
"%stables:%"
PRId32
"%s"
,
GREEN
,
tables
,
NC
);
pPrint
(
"%stables:%"
PRId32
"%s"
,
GREEN
,
replica
,
NC
);
pPrint
(
"%sdbName:%s%s"
,
GREEN
,
dbName
,
NC
);
pPrint
(
"%stableName:%s%s"
,
GREEN
,
stableName
,
NC
);
pPrint
(
"%sstart to run%s"
,
GREEN
,
NC
);
...
...
tests/tsim/src/simExe.c
浏览文件 @
59962fed
...
...
@@ -670,12 +670,12 @@ bool simExecuteNativeSqlCommand(SScript *script, char *rest, bool isSlow) {
ret
=
taos_errno
(
pSql
);
if
(
ret
==
TSDB_CODE_MND_TABLE_ALREADY_EXIST
||
ret
==
TSDB_CODE_MND_DB_ALREADY_EXIST
)
{
simDebug
(
"script:%s, taos:%p, %s success, ret:%d:%s"
,
script
->
fileName
,
script
->
taos
,
rest
,
ret
,
tstrerror
(
ret
));
simDebug
(
"script:%s, taos:%p, %s success, ret:%d:%s"
,
script
->
fileName
,
script
->
taos
,
rest
,
ret
&
0XFFFF
,
tstrerror
(
ret
));
ret
=
0
;
break
;
}
else
if
(
ret
!=
0
)
{
simDebug
(
"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
&
0XFFFF
,
tstrerror
(
ret
),
taos_errstr
(
pSql
));
if
(
line
->
errorJump
==
SQL_JUMP_TRUE
)
{
script
->
linePos
=
line
->
jump
;
...
...
@@ -691,7 +691,7 @@ bool simExecuteNativeSqlCommand(SScript *script, char *rest, bool isSlow) {
}
if
(
ret
)
{
sprintf
(
script
->
error
,
"lineNum:%d. sql:%s failed, ret:%d:%s"
,
line
->
lineNum
,
rest
,
ret
,
tstrerror
(
ret
));
sprintf
(
script
->
error
,
"lineNum:%d. sql:%s failed, ret:%d:%s"
,
line
->
lineNum
,
rest
,
ret
&
0XFFFF
,
tstrerror
(
ret
));
return
false
;
}
...
...
@@ -821,7 +821,7 @@ bool simExecuteRestFulSqlCommand(SScript *script, char *rest) {
ret
=
simExecuteRestFulCommand
(
script
,
command
);
if
(
ret
==
TSDB_CODE_MND_TABLE_ALREADY_EXIST
||
ret
==
TSDB_CODE_MND_DB_ALREADY_EXIST
)
{
simDebug
(
"script:%s, taos:%p, %s success, ret:%d:%s"
,
script
->
fileName
,
script
->
taos
,
rest
,
ret
,
tstrerror
(
ret
));
simDebug
(
"script:%s, taos:%p, %s success, ret:%d:%s"
,
script
->
fileName
,
script
->
taos
,
rest
,
ret
&
0XFFFF
,
tstrerror
(
ret
));
ret
=
0
;
break
;
}
else
if
(
ret
!=
0
)
{
...
...
@@ -957,12 +957,12 @@ bool simExecuteSqlErrorCmd(SScript *script, char *rest) {
if
(
ret
!=
TSDB_CODE_SUCCESS
)
{
simDebug
(
"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
&
0XFFFF
,
tstrerror
(
ret
));
script
->
linePos
++
;
return
true
;
}
sprintf
(
script
->
error
,
"lineNum:%d. sql:%s expect failed, but success, ret:%d:%s"
,
line
->
lineNum
,
rest
,
ret
,
tstrerror
(
ret
));
sprintf
(
script
->
error
,
"lineNum:%d. sql:%s expect failed, but success, ret:%d:%s"
,
line
->
lineNum
,
rest
,
ret
&
0XFFFF
,
tstrerror
(
ret
));
return
false
;
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录