Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
慢慢CG
TDengine
提交
787f6387
T
TDengine
项目概览
慢慢CG
/
TDengine
与 Fork 源项目一致
Fork自
taosdata / TDengine
通知
1
Star
0
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看板
未验证
提交
787f6387
编写于
4月 22, 2020
作者:
S
slguan
提交者:
GitHub
4月 22, 2020
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #1688 from taosdata/feature/mpeer
Feature/mpeer
上级
3d843d32
c95b1eec
变更
38
展开全部
隐藏空白更改
内联
并排
Showing
38 changed file
with
1001 addition
and
647 deletion
+1001
-647
src/dnode/src/dnodeMClient.c
src/dnode/src/dnodeMClient.c
+2
-2
src/dnode/src/dnodeMgmt.c
src/dnode/src/dnodeMgmt.c
+22
-27
src/dnode/src/dnodeMnode.c
src/dnode/src/dnodeMnode.c
+0
-1
src/inc/taosmsg.h
src/inc/taosmsg.h
+44
-20
src/inc/vnode.h
src/inc/vnode.h
+1
-0
src/mnode/inc/mgmtDef.h
src/mnode/inc/mgmtDef.h
+25
-23
src/mnode/inc/mgmtDnode.h
src/mnode/inc/mgmtDnode.h
+4
-1
src/mnode/inc/mgmtUser.h
src/mnode/inc/mgmtUser.h
+2
-1
src/mnode/inc/mgmtVgroup.h
src/mnode/inc/mgmtVgroup.h
+4
-2
src/mnode/src/mgmtBalance.c
src/mnode/src/mgmtBalance.c
+2
-3
src/mnode/src/mgmtDb.c
src/mnode/src/mgmtDb.c
+2
-2
src/mnode/src/mgmtDnode.c
src/mnode/src/mgmtDnode.c
+65
-69
src/mnode/src/mgmtMain.c
src/mnode/src/mgmtMain.c
+1
-1
src/mnode/src/mgmtMnode.c
src/mnode/src/mgmtMnode.c
+4
-4
src/mnode/src/mgmtProfile.c
src/mnode/src/mgmtProfile.c
+3
-3
src/mnode/src/mgmtShell.c
src/mnode/src/mgmtShell.c
+2
-2
src/mnode/src/mgmtTable.c
src/mnode/src/mgmtTable.c
+7
-9
src/mnode/src/mgmtUser.c
src/mnode/src/mgmtUser.c
+13
-9
src/mnode/src/mgmtVgroup.c
src/mnode/src/mgmtVgroup.c
+113
-75
src/plugins/monitor/src/monitorSystem.c
src/plugins/monitor/src/monitorSystem.c
+1
-0
src/tsdb/src/tsdbMain.c
src/tsdb/src/tsdbMain.c
+1
-1
src/util/inc/tutil.h
src/util/inc/tutil.h
+2
-0
src/util/src/tutil.c
src/util/src/tutil.c
+24
-0
src/vnode/CMakeLists.txt
src/vnode/CMakeLists.txt
+1
-0
src/vnode/src/vnodeMain.c
src/vnode/src/vnodeMain.c
+343
-81
tests/script/sh/deploy.sh
tests/script/sh/deploy.sh
+1
-1
tests/script/test.sh
tests/script/test.sh
+2
-0
tests/script/unique/dnode/balance1.sim
tests/script/unique/dnode/balance1.sim
+64
-64
tests/script/unique/dnode/balance2.sim
tests/script/unique/dnode/balance2.sim
+55
-55
tests/script/unique/dnode/balance3.sim
tests/script/unique/dnode/balance3.sim
+61
-61
tests/script/unique/dnode/balancex.sim
tests/script/unique/dnode/balancex.sim
+26
-26
tests/script/unique/dnode/basic1.sim
tests/script/unique/dnode/basic1.sim
+0
-0
tests/script/unique/dnode/monitor_bug.sim
tests/script/unique/dnode/monitor_bug.sim
+8
-8
tests/script/unique/dnode/offline1.sim
tests/script/unique/dnode/offline1.sim
+3
-3
tests/script/unique/dnode/offline2.sim
tests/script/unique/dnode/offline2.sim
+4
-4
tests/script/unique/dnode/remove1.sim
tests/script/unique/dnode/remove1.sim
+25
-25
tests/script/unique/dnode/remove2.sim
tests/script/unique/dnode/remove2.sim
+18
-18
tests/script/unique/dnode/vnode_clean.sim
tests/script/unique/dnode/vnode_clean.sim
+46
-46
未找到文件。
src/dnode/src/dnodeMClient.c
浏览文件 @
787f6387
...
@@ -298,7 +298,7 @@ static bool dnodeReadMnodeInfos() {
...
@@ -298,7 +298,7 @@ static bool dnodeReadMnodeInfos() {
tsMnodeInfos
.
nodeInfos
[
i
].
syncPort
=
(
uint16_t
)
syncPort
->
valueint
;
tsMnodeInfos
.
nodeInfos
[
i
].
syncPort
=
(
uint16_t
)
syncPort
->
valueint
;
cJSON
*
nodeName
=
cJSON_GetObjectItem
(
nodeInfo
,
"nodeName"
);
cJSON
*
nodeName
=
cJSON_GetObjectItem
(
nodeInfo
,
"nodeName"
);
if
(
!
node
Ip
||
nodeName
->
type
!=
cJSON_String
||
nodeName
->
valuestring
==
NULL
)
{
if
(
!
node
Name
||
nodeName
->
type
!=
cJSON_String
||
nodeName
->
valuestring
==
NULL
)
{
dError
(
"failed to read mnode mgmtIpList.json, nodeName not found"
);
dError
(
"failed to read mnode mgmtIpList.json, nodeName not found"
);
goto
PARSE_OVER
;
goto
PARSE_OVER
;
}
}
...
@@ -310,7 +310,7 @@ static bool dnodeReadMnodeInfos() {
...
@@ -310,7 +310,7 @@ static bool dnodeReadMnodeInfos() {
dPrint
(
"read mnode iplist successed, numOfIps:%d inUse:%d"
,
tsMnodeInfos
.
nodeNum
,
tsMnodeInfos
.
inUse
);
dPrint
(
"read mnode iplist successed, numOfIps:%d inUse:%d"
,
tsMnodeInfos
.
nodeNum
,
tsMnodeInfos
.
inUse
);
for
(
int32_t
i
=
0
;
i
<
tsMnodeInfos
.
nodeNum
;
i
++
)
{
for
(
int32_t
i
=
0
;
i
<
tsMnodeInfos
.
nodeNum
;
i
++
)
{
dPrint
(
"mnode:%d, ip:%s:%u name:%s"
,
tsMnodeInfos
.
nodeInfos
[
i
].
nodeId
,
dPrint
(
"mnode:%d, ip:%s:%u name:%s"
,
tsMnodeInfos
.
nodeInfos
[
i
].
nodeId
,
taosIpStr
(
tsMnodeInfos
.
nodeInfos
[
i
].
nodeI
d
),
tsMnodeInfos
.
nodeInfos
[
i
].
nodePort
,
taosIpStr
(
tsMnodeInfos
.
nodeInfos
[
i
].
nodeI
p
),
tsMnodeInfos
.
nodeInfos
[
i
].
nodePort
,
tsMnodeInfos
.
nodeInfos
[
i
].
nodeName
);
tsMnodeInfos
.
nodeInfos
[
i
].
nodeName
);
}
}
...
...
src/dnode/src/dnodeMgmt.c
浏览文件 @
787f6387
...
@@ -33,7 +33,6 @@ static int32_t dnodeOpenVnodes();
...
@@ -33,7 +33,6 @@ static int32_t dnodeOpenVnodes();
static
void
dnodeCloseVnodes
();
static
void
dnodeCloseVnodes
();
static
int32_t
dnodeProcessCreateVnodeMsg
(
SRpcMsg
*
pMsg
);
static
int32_t
dnodeProcessCreateVnodeMsg
(
SRpcMsg
*
pMsg
);
static
int32_t
dnodeProcessDropVnodeMsg
(
SRpcMsg
*
pMsg
);
static
int32_t
dnodeProcessDropVnodeMsg
(
SRpcMsg
*
pMsg
);
static
int32_t
dnodeProcessAlterVnodeMsg
(
SRpcMsg
*
pMsg
);
static
int32_t
dnodeProcessAlterStreamMsg
(
SRpcMsg
*
pMsg
);
static
int32_t
dnodeProcessAlterStreamMsg
(
SRpcMsg
*
pMsg
);
static
int32_t
dnodeProcessConfigDnodeMsg
(
SRpcMsg
*
pMsg
);
static
int32_t
dnodeProcessConfigDnodeMsg
(
SRpcMsg
*
pMsg
);
static
int32_t
(
*
dnodeProcessMgmtMsgFp
[
TSDB_MSG_TYPE_MAX
])(
SRpcMsg
*
pMsg
);
static
int32_t
(
*
dnodeProcessMgmtMsgFp
[
TSDB_MSG_TYPE_MAX
])(
SRpcMsg
*
pMsg
);
...
@@ -41,7 +40,6 @@ static int32_t (*dnodeProcessMgmtMsgFp[TSDB_MSG_TYPE_MAX])(SRpcMsg *pMsg);
...
@@ -41,7 +40,6 @@ static int32_t (*dnodeProcessMgmtMsgFp[TSDB_MSG_TYPE_MAX])(SRpcMsg *pMsg);
int32_t
dnodeInitMgmt
()
{
int32_t
dnodeInitMgmt
()
{
dnodeProcessMgmtMsgFp
[
TSDB_MSG_TYPE_MD_CREATE_VNODE
]
=
dnodeProcessCreateVnodeMsg
;
dnodeProcessMgmtMsgFp
[
TSDB_MSG_TYPE_MD_CREATE_VNODE
]
=
dnodeProcessCreateVnodeMsg
;
dnodeProcessMgmtMsgFp
[
TSDB_MSG_TYPE_MD_DROP_VNODE
]
=
dnodeProcessDropVnodeMsg
;
dnodeProcessMgmtMsgFp
[
TSDB_MSG_TYPE_MD_DROP_VNODE
]
=
dnodeProcessDropVnodeMsg
;
dnodeProcessMgmtMsgFp
[
TSDB_MSG_TYPE_MD_ALTER_VNODE
]
=
dnodeProcessAlterVnodeMsg
;
dnodeProcessMgmtMsgFp
[
TSDB_MSG_TYPE_MD_ALTER_STREAM
]
=
dnodeProcessAlterStreamMsg
;
dnodeProcessMgmtMsgFp
[
TSDB_MSG_TYPE_MD_ALTER_STREAM
]
=
dnodeProcessAlterStreamMsg
;
dnodeProcessMgmtMsgFp
[
TSDB_MSG_TYPE_MD_CONFIG_DNODE
]
=
dnodeProcessConfigDnodeMsg
;
dnodeProcessMgmtMsgFp
[
TSDB_MSG_TYPE_MD_CONFIG_DNODE
]
=
dnodeProcessConfigDnodeMsg
;
...
@@ -129,25 +127,31 @@ static void dnodeCloseVnodes() {
...
@@ -129,25 +127,31 @@ static void dnodeCloseVnodes() {
static
int32_t
dnodeProcessCreateVnodeMsg
(
SRpcMsg
*
rpcMsg
)
{
static
int32_t
dnodeProcessCreateVnodeMsg
(
SRpcMsg
*
rpcMsg
)
{
SMDCreateVnodeMsg
*
pCreate
=
rpcMsg
->
pCont
;
SMDCreateVnodeMsg
*
pCreate
=
rpcMsg
->
pCont
;
pCreate
->
cfg
.
vgId
=
htonl
(
pCreate
->
cfg
.
vgId
);
pCreate
->
cfg
.
vgId
=
htonl
(
pCreate
->
cfg
.
vgId
);
pCreate
->
cfg
.
max
Sessions
=
htonl
(
pCreate
->
cfg
.
maxSession
s
);
pCreate
->
cfg
.
max
Tables
=
htonl
(
pCreate
->
cfg
.
maxTable
s
);
pCreate
->
cfg
.
cacheBlockSize
=
htonl
(
pCreate
->
cfg
.
cacheBlock
Size
);
pCreate
->
cfg
.
maxCacheSize
=
htobe64
(
pCreate
->
cfg
.
maxCache
Size
);
pCreate
->
cfg
.
daysPerFile
=
htonl
(
pCreate
->
cfg
.
daysPerFile
);
pCreate
->
cfg
.
minRowsPerFileBlock
=
htonl
(
pCreate
->
cfg
.
minRowsPerFileBlock
);
pCreate
->
cfg
.
daysToKeep1
=
htonl
(
pCreate
->
cfg
.
daysToKeep1
);
pCreate
->
cfg
.
maxRowsPerFileBlock
=
htonl
(
pCreate
->
cfg
.
maxRowsPerFileBlock
);
pCreate
->
cfg
.
days
ToKeep2
=
htonl
(
pCreate
->
cfg
.
daysToKeep2
);
pCreate
->
cfg
.
days
PerFile
=
htonl
(
pCreate
->
cfg
.
daysPerFile
);
pCreate
->
cfg
.
daysToKeep
=
htonl
(
pCreate
->
cfg
.
daysToKeep
);
pCreate
->
cfg
.
daysToKeep
1
=
htonl
(
pCreate
->
cfg
.
daysToKeep1
);
pCreate
->
cfg
.
commitTime
=
htonl
(
pCreate
->
cfg
.
commitTime
);
pCreate
->
cfg
.
daysToKeep2
=
htonl
(
pCreate
->
cfg
.
daysToKeep2
);
pCreate
->
cfg
.
rowsInFileBlock
=
htonl
(
pCreate
->
cfg
.
rowsInFileBlock
);
pCreate
->
cfg
.
daysToKeep
=
htonl
(
pCreate
->
cfg
.
daysToKeep
);
pCreate
->
cfg
.
blocksPerTable
=
htons
(
pCreate
->
cfg
.
blocksPerTabl
e
);
pCreate
->
cfg
.
commitTime
=
htonl
(
pCreate
->
cfg
.
commitTim
e
);
pCreate
->
cfg
.
cacheNumOfBlocks
.
totalBlocks
=
htonl
(
pCreate
->
cfg
.
cacheNumOfBlocks
.
totalBlocks
);
pCreate
->
cfg
.
arbitratorIp
=
htonl
(
pCreate
->
cfg
.
arbitratorIp
);
for
(
int32_t
j
=
0
;
j
<
pCreate
->
cfg
.
replications
;
++
j
)
{
for
(
int32_t
j
=
0
;
j
<
pCreate
->
cfg
.
replications
;
++
j
)
{
pCreate
->
vpeerDesc
[
j
].
vgId
=
htonl
(
pCreate
->
vpeerDesc
[
j
].
vgId
);
pCreate
->
nodes
[
j
].
nodeId
=
htonl
(
pCreate
->
nodes
[
j
].
nodeId
);
pCreate
->
vpeerDesc
[
j
].
dnodeId
=
htonl
(
pCreate
->
vpeerDesc
[
j
].
dnodeId
);
pCreate
->
nodes
[
j
].
nodeIp
=
htonl
(
pCreate
->
nodes
[
j
].
nodeIp
);
pCreate
->
vpeerDesc
[
j
].
ip
=
htonl
(
pCreate
->
vpeerDesc
[
j
].
ip
);
}
}
return
vnodeCreate
(
pCreate
);
void
*
pVnode
=
vnodeAccquireVnode
(
pCreate
->
cfg
.
vgId
);
if
(
pVnode
!=
NULL
)
{
int32_t
code
=
vnodeAlter
(
pVnode
,
pCreate
);
vnodeRelease
(
pVnode
);
return
code
;
}
else
{
return
vnodeCreate
(
pCreate
);
}
}
}
static
int32_t
dnodeProcessDropVnodeMsg
(
SRpcMsg
*
rpcMsg
)
{
static
int32_t
dnodeProcessDropVnodeMsg
(
SRpcMsg
*
rpcMsg
)
{
...
@@ -157,15 +161,6 @@ static int32_t dnodeProcessDropVnodeMsg(SRpcMsg *rpcMsg) {
...
@@ -157,15 +161,6 @@ static int32_t dnodeProcessDropVnodeMsg(SRpcMsg *rpcMsg) {
return
vnodeDrop
(
pDrop
->
vgId
);
return
vnodeDrop
(
pDrop
->
vgId
);
}
}
static
int32_t
dnodeProcessAlterVnodeMsg
(
SRpcMsg
*
rpcMsg
)
{
SMDCreateVnodeMsg
*
pCreate
=
rpcMsg
->
pCont
;
pCreate
->
cfg
.
vgId
=
htonl
(
pCreate
->
cfg
.
vgId
);
pCreate
->
cfg
.
maxSessions
=
htonl
(
pCreate
->
cfg
.
maxSessions
);
pCreate
->
cfg
.
daysPerFile
=
htonl
(
pCreate
->
cfg
.
daysPerFile
);
return
0
;
}
static
int32_t
dnodeProcessAlterStreamMsg
(
SRpcMsg
*
pMsg
)
{
static
int32_t
dnodeProcessAlterStreamMsg
(
SRpcMsg
*
pMsg
)
{
// SMDAlterStreamMsg *pStream = pCont;
// SMDAlterStreamMsg *pStream = pCont;
// pStream->uid = htobe64(pStream->uid);
// pStream->uid = htobe64(pStream->uid);
...
...
src/dnode/src/dnodeMnode.c
浏览文件 @
787f6387
...
@@ -33,7 +33,6 @@ int32_t dnodeInitMnode() {
...
@@ -33,7 +33,6 @@ int32_t dnodeInitMnode() {
dnodeProcessMgmtMsgFp
[
TSDB_MSG_TYPE_MD_DROP_STABLE
]
=
dnodeWrite
;
dnodeProcessMgmtMsgFp
[
TSDB_MSG_TYPE_MD_DROP_STABLE
]
=
dnodeWrite
;
dnodeProcessMgmtMsgFp
[
TSDB_MSG_TYPE_MD_CREATE_VNODE
]
=
dnodeMgmt
;
dnodeProcessMgmtMsgFp
[
TSDB_MSG_TYPE_MD_CREATE_VNODE
]
=
dnodeMgmt
;
dnodeProcessMgmtMsgFp
[
TSDB_MSG_TYPE_MD_DROP_VNODE
]
=
dnodeMgmt
;
dnodeProcessMgmtMsgFp
[
TSDB_MSG_TYPE_MD_DROP_VNODE
]
=
dnodeMgmt
;
dnodeProcessMgmtMsgFp
[
TSDB_MSG_TYPE_MD_ALTER_VNODE
]
=
dnodeMgmt
;
dnodeProcessMgmtMsgFp
[
TSDB_MSG_TYPE_MD_ALTER_STREAM
]
=
dnodeMgmt
;
dnodeProcessMgmtMsgFp
[
TSDB_MSG_TYPE_MD_ALTER_STREAM
]
=
dnodeMgmt
;
dnodeProcessMgmtMsgFp
[
TSDB_MSG_TYPE_MD_CONFIG_DNODE
]
=
dnodeMgmt
;
dnodeProcessMgmtMsgFp
[
TSDB_MSG_TYPE_MD_CONFIG_DNODE
]
=
dnodeMgmt
;
...
...
src/inc/taosmsg.h
浏览文件 @
787f6387
...
@@ -48,14 +48,12 @@ extern "C" {
...
@@ -48,14 +48,12 @@ extern "C" {
#define TSDB_MSG_TYPE_MD_CREATE_VNODE_RSP 16
#define TSDB_MSG_TYPE_MD_CREATE_VNODE_RSP 16
#define TSDB_MSG_TYPE_MD_DROP_VNODE 17
#define TSDB_MSG_TYPE_MD_DROP_VNODE 17
#define TSDB_MSG_TYPE_MD_DROP_VNODE_RSP 18
#define TSDB_MSG_TYPE_MD_DROP_VNODE_RSP 18
#define TSDB_MSG_TYPE_MD_ALTER_VNODE 19
#define TSDB_MSG_TYPE_MD_DROP_STABLE 19
#define TSDB_MSG_TYPE_MD_ALTER_VNODE_RSP 20
#define TSDB_MSG_TYPE_MD_DROP_STABLE_RSP 20
#define TSDB_MSG_TYPE_MD_DROP_STABLE 21
#define TSDB_MSG_TYPE_MD_ALTER_STREAM 21
#define TSDB_MSG_TYPE_MD_DROP_STABLE_RSP 22
#define TSDB_MSG_TYPE_MD_ALTER_STREAM_RSP 22
#define TSDB_MSG_TYPE_MD_ALTER_STREAM 23
#define TSDB_MSG_TYPE_MD_CONFIG_DNODE 23
#define TSDB_MSG_TYPE_MD_ALTER_STREAM_RSP 24
#define TSDB_MSG_TYPE_MD_CONFIG_DNODE_RSP 24
#define TSDB_MSG_TYPE_MD_CONFIG_DNODE 25
#define TSDB_MSG_TYPE_MD_CONFIG_DNODE_RSP 26
// message from client to mnode
// message from client to mnode
#define TSDB_MSG_TYPE_CM_CONNECT 31
#define TSDB_MSG_TYPE_CM_CONNECT 31
...
@@ -245,12 +243,6 @@ typedef struct SSchema {
...
@@ -245,12 +243,6 @@ typedef struct SSchema {
int16_t
bytes
;
int16_t
bytes
;
}
SSchema
;
}
SSchema
;
typedef
struct
{
int32_t
vgId
;
int32_t
dnodeId
;
uint32_t
ip
;
}
SVnodeDesc
;
typedef
struct
{
typedef
struct
{
int32_t
contLen
;
int32_t
contLen
;
int32_t
vgId
;
int32_t
vgId
;
...
@@ -518,12 +510,10 @@ typedef struct {
...
@@ -518,12 +510,10 @@ typedef struct {
uint8_t
status
;
uint8_t
status
;
uint8_t
role
;
uint8_t
role
;
uint8_t
accessState
;
uint8_t
accessState
;
uint8_t
replica
;
uint8_t
reserved
[
5
];
uint8_t
reserved
[
5
];
}
SVnodeLoad
;
}
SVnodeLoad
;
/*
* NOTE: sizeof(SVnodeCfg) < TSDB_FILE_HEADER_LEN / 4
*/
typedef
struct
{
typedef
struct
{
char
acct
[
TSDB_USER_LEN
+
1
];
char
acct
[
TSDB_USER_LEN
+
1
];
char
db
[
TSDB_DB_NAME_LEN
+
1
];
char
db
[
TSDB_DB_NAME_LEN
+
1
];
...
@@ -548,7 +538,7 @@ typedef struct {
...
@@ -548,7 +538,7 @@ typedef struct {
int8_t
loadLatest
;
// load into mem or not
int8_t
loadLatest
;
// load into mem or not
uint8_t
precision
;
// time resolution
uint8_t
precision
;
// time resolution
int8_t
reserved
[
16
];
int8_t
reserved
[
16
];
}
S
VnodeCfg
,
S
DbCfg
,
SCMCreateDbMsg
,
SCMAlterDbMsg
;
}
SDbCfg
,
SCMCreateDbMsg
,
SCMAlterDbMsg
;
typedef
struct
{
typedef
struct
{
char
db
[
TSDB_TABLE_ID_LEN
+
1
];
char
db
[
TSDB_TABLE_ID_LEN
+
1
];
...
@@ -614,8 +604,35 @@ typedef struct {
...
@@ -614,8 +604,35 @@ typedef struct {
}
SDMStatusRsp
;
}
SDMStatusRsp
;
typedef
struct
{
typedef
struct
{
SVnodeCfg
cfg
;
uint32_t
vgId
;
SVnodeDesc
vpeerDesc
[
TSDB_MAX_MPEERS
];
int32_t
maxTables
;
int64_t
maxCacheSize
;
int32_t
minRowsPerFileBlock
;
int32_t
maxRowsPerFileBlock
;
int32_t
daysPerFile
;
int32_t
daysToKeep
;
int32_t
daysToKeep1
;
int32_t
daysToKeep2
;
int32_t
commitTime
;
uint8_t
precision
;
// time resolution
int8_t
compression
;
int8_t
wals
;
int8_t
commitLog
;
int8_t
replications
;
int8_t
quorum
;
uint32_t
arbitratorIp
;
int8_t
reserved
[
16
];
}
SMDVnodeCfg
;
typedef
struct
{
int32_t
nodeId
;
uint32_t
nodeIp
;
char
nodeName
[
TSDB_NODE_NAME_LEN
+
1
];
}
SMDVnodeDesc
;
typedef
struct
{
SMDVnodeCfg
cfg
;
SMDVnodeDesc
nodes
[
TSDB_MAX_MPEERS
];
}
SMDCreateVnodeMsg
;
}
SMDCreateVnodeMsg
;
typedef
struct
{
typedef
struct
{
...
@@ -673,9 +690,16 @@ typedef struct {
...
@@ -673,9 +690,16 @@ typedef struct {
int32_t
metaElem
[
TSDB_MAX_JOIN_TABLE_NUM
];
int32_t
metaElem
[
TSDB_MAX_JOIN_TABLE_NUM
];
}
SSuperTableMetaMsg
;
}
SSuperTableMetaMsg
;
typedef
struct
{
int32_t
nodeId
;
uint32_t
nodeIp
;
uint16_t
nodePort
;
}
SVnodeDesc
;
typedef
struct
{
typedef
struct
{
SVnodeDesc
vpeerDesc
[
TSDB_REPLICA_MAX_NUM
];
SVnodeDesc
vpeerDesc
[
TSDB_REPLICA_MAX_NUM
];
int16_t
index
;
// used locally
int16_t
index
;
// used locally
int32_t
vgId
;
int32_t
numOfSids
;
int32_t
numOfSids
;
int32_t
pSidExtInfoList
[];
// offset value of STableIdInfo
int32_t
pSidExtInfoList
[];
// offset value of STableIdInfo
}
SVnodeSidList
;
}
SVnodeSidList
;
...
...
src/inc/vnode.h
浏览文件 @
787f6387
...
@@ -38,6 +38,7 @@ typedef struct {
...
@@ -38,6 +38,7 @@ typedef struct {
int32_t
vnodeCreate
(
SMDCreateVnodeMsg
*
pVnodeCfg
);
int32_t
vnodeCreate
(
SMDCreateVnodeMsg
*
pVnodeCfg
);
int32_t
vnodeDrop
(
int32_t
vgId
);
int32_t
vnodeDrop
(
int32_t
vgId
);
int32_t
vnodeOpen
(
int32_t
vgId
,
char
*
rootDir
);
int32_t
vnodeOpen
(
int32_t
vgId
,
char
*
rootDir
);
int32_t
vnodeAlter
(
void
*
pVnode
,
SMDCreateVnodeMsg
*
pVnodeCfg
);
int32_t
vnodeClose
(
int32_t
vgId
);
int32_t
vnodeClose
(
int32_t
vgId
);
void
vnodeRelease
(
void
*
pVnode
);
void
vnodeRelease
(
void
*
pVnode
);
...
...
src/mnode/inc/mgmtDef.h
浏览文件 @
787f6387
...
@@ -51,7 +51,6 @@ typedef struct SDnodeObj {
...
@@ -51,7 +51,6 @@ typedef struct SDnodeObj {
int8_t
reserved
[
15
];
int8_t
reserved
[
15
];
int8_t
updateEnd
[
1
];
int8_t
updateEnd
[
1
];
int32_t
refCount
;
int32_t
refCount
;
SVnodeLoad
vload
[
TSDB_MAX_VNODES
];
uint32_t
moduleStatus
;
uint32_t
moduleStatus
;
uint32_t
lastReboot
;
// time stamp for last reboot
uint32_t
lastReboot
;
// time stamp for last reboot
float
score
;
// calc in balance function
float
score
;
// calc in balance function
...
@@ -72,13 +71,6 @@ typedef struct SMnodeObj {
...
@@ -72,13 +71,6 @@ typedef struct SMnodeObj {
SDnodeObj
*
pDnode
;
SDnodeObj
*
pDnode
;
}
SMnodeObj
;
}
SMnodeObj
;
typedef
struct
{
int32_t
dnodeId
;
uint32_t
privateIp
;
uint32_t
publicIp
;
}
SVnodeGid
;
typedef
struct
{
typedef
struct
{
char
tableId
[
TSDB_TABLE_ID_LEN
+
1
];
char
tableId
[
TSDB_TABLE_ID_LEN
+
1
];
int8_t
type
;
int8_t
type
;
...
@@ -120,24 +112,34 @@ typedef struct {
...
@@ -120,24 +112,34 @@ typedef struct {
SSuperTableObj
*
superTable
;
SSuperTableObj
*
superTable
;
}
SChildTableObj
;
}
SChildTableObj
;
typedef
struct
{
int32_t
dnodeId
;
int8_t
role
;
int8_t
reserved
[
3
];
SDnodeObj
*
pDnode
;
}
SVnodeGid
;
typedef
struct
SVgObj
{
typedef
struct
SVgObj
{
uint32_t
vgId
;
uint32_t
vgId
;
char
dbName
[
TSDB_DB_NAME_LEN
+
1
];
char
dbName
[
TSDB_DB_NAME_LEN
+
1
];
int64_t
createdTime
;
int64_t
createdTime
;
SVnodeGid
vnodeGid
[
TSDB_VNODES_SUPPORT
];
SVnodeGid
vnodeGid
[
TSDB_VNODES_SUPPORT
];
int32_t
numOfVnodes
;
int32_t
numOfVnodes
;
int32_t
lbDnodeId
;
int32_t
lbDnodeId
;
int32_t
lbTime
;
int32_t
lbTime
;
int8_t
status
;
int8_t
status
;
int8_t
inUse
;
int8_t
inUse
;
int8_t
reserved
[
13
];
int8_t
reserved
[
13
];
int8_t
updateEnd
[
1
];
int8_t
updateEnd
[
1
];
int32_t
refCount
;
int32_t
refCount
;
struct
SVgObj
*
prev
,
*
next
;
struct
SVgObj
*
prev
,
*
next
;
struct
SDbObj
*
pDb
;
struct
SDbObj
*
pDb
;
int32_t
numOfTables
;
int32_t
numOfTables
;
void
*
idPool
;
int64_t
totalStorage
;
SChildTableObj
**
tableList
;
int64_t
compStorage
;
int64_t
pointsWritten
;
void
*
idPool
;
SChildTableObj
**
tableList
;
}
SVgObj
;
}
SVgObj
;
typedef
struct
SDbObj
{
typedef
struct
SDbObj
{
...
...
src/mnode/inc/mgmtDnode.h
浏览文件 @
787f6387
...
@@ -35,12 +35,15 @@ void mgmtMonitorDnodeModule();
...
@@ -35,12 +35,15 @@ void mgmtMonitorDnodeModule();
int32_t
mgmtGetDnodesNum
();
int32_t
mgmtGetDnodesNum
();
void
*
mgmtGetNextDnode
(
void
*
pNode
,
SDnodeObj
**
pDnode
);
void
*
mgmtGetNextDnode
(
void
*
pNode
,
SDnodeObj
**
pDnode
);
void
mgmtReleaseDnode
(
SDnodeObj
*
pDnode
);
void
mgmtIncDnodeRef
(
SDnodeObj
*
pDnode
);
void
mgmtDecDnodeRef
(
SDnodeObj
*
pDnode
);
void
*
mgmtGetDnode
(
int32_t
dnodeId
);
void
*
mgmtGetDnode
(
int32_t
dnodeId
);
void
*
mgmtGetDnodeByIp
(
uint32_t
ip
);
void
*
mgmtGetDnodeByIp
(
uint32_t
ip
);
void
mgmtUpdateDnode
(
SDnodeObj
*
pDnode
);
void
mgmtUpdateDnode
(
SDnodeObj
*
pDnode
);
int32_t
mgmtDropDnode
(
SDnodeObj
*
pDnode
);
int32_t
mgmtDropDnode
(
SDnodeObj
*
pDnode
);
extern
int32_t
tsAccessSquence
;
#ifdef __cplusplus
#ifdef __cplusplus
}
}
#endif
#endif
...
...
src/mnode/inc/mgmtUser.h
浏览文件 @
787f6387
...
@@ -24,7 +24,8 @@ extern "C" {
...
@@ -24,7 +24,8 @@ extern "C" {
int32_t
mgmtInitUsers
();
int32_t
mgmtInitUsers
();
void
mgmtCleanUpUsers
();
void
mgmtCleanUpUsers
();
SUserObj
*
mgmtGetUser
(
char
*
name
);
SUserObj
*
mgmtGetUser
(
char
*
name
);
void
mgmtReleaseUser
(
SUserObj
*
pUser
);
void
mgmtIncUserRef
(
SUserObj
*
pUser
);
void
mgmtDecUserRef
(
SUserObj
*
pUser
);
SUserObj
*
mgmtGetUserFromConn
(
void
*
pConn
,
bool
*
usePublicIp
);
SUserObj
*
mgmtGetUserFromConn
(
void
*
pConn
,
bool
*
usePublicIp
);
int32_t
mgmtCreateUser
(
SAcctObj
*
pAcct
,
char
*
name
,
char
*
pass
);
int32_t
mgmtCreateUser
(
SAcctObj
*
pAcct
,
char
*
name
,
char
*
pass
);
void
mgmtDropAllUsers
(
SAcctObj
*
pAcct
);
void
mgmtDropAllUsers
(
SAcctObj
*
pAcct
);
...
...
src/mnode/inc/mgmtVgroup.h
浏览文件 @
787f6387
...
@@ -30,12 +30,13 @@ enum _TSDB_VG_STATUS {
...
@@ -30,12 +30,13 @@ enum _TSDB_VG_STATUS {
int32_t
mgmtInitVgroups
();
int32_t
mgmtInitVgroups
();
void
mgmtCleanUpVgroups
();
void
mgmtCleanUpVgroups
();
SVgObj
*
mgmtGetVgroup
(
int32_t
vgId
);
SVgObj
*
mgmtGetVgroup
(
int32_t
vgId
);
void
mgmtReleaseVgroup
(
SVgObj
*
pVgroup
);
void
mgmtIncVgroupRef
(
SVgObj
*
pVgroup
);
void
mgmtDecVgroupRef
(
SVgObj
*
pVgroup
);
void
mgmtDropAllVgroups
(
SDbObj
*
pDropDb
);
void
mgmtDropAllVgroups
(
SDbObj
*
pDropDb
);
void
*
mgmtGetNextVgroup
(
void
*
pNode
,
SVgObj
**
pVgroup
);
void
*
mgmtGetNextVgroup
(
void
*
pNode
,
SVgObj
**
pVgroup
);
void
mgmtUpdateVgroup
(
SVgObj
*
pVgroup
);
void
mgmtUpdateVgroup
(
SVgObj
*
pVgroup
);
void
mgmtUpdateVgroupStatus
(
SVgObj
*
pVgroup
,
int32_t
dnodeId
,
SVnodeLoad
*
pVload
);
void
mgmtUpdateVgroupStatus
(
SVgObj
*
pVgroup
,
SDnodeObj
*
dnodeId
,
SVnodeLoad
*
pVload
);
void
mgmtCreateVgroup
(
SQueuedMsg
*
pMsg
,
SDbObj
*
pDb
);
void
mgmtCreateVgroup
(
SQueuedMsg
*
pMsg
,
SDbObj
*
pDb
);
void
mgmtDropVgroup
(
SVgObj
*
pVgroup
,
void
*
ahandle
);
void
mgmtDropVgroup
(
SVgObj
*
pVgroup
,
void
*
ahandle
);
...
@@ -46,6 +47,7 @@ void mgmtAddTableIntoVgroup(SVgObj *pVgroup, SChildTableObj *pTable);
...
@@ -46,6 +47,7 @@ void mgmtAddTableIntoVgroup(SVgObj *pVgroup, SChildTableObj *pTable);
void
mgmtRemoveTableFromVgroup
(
SVgObj
*
pVgroup
,
SChildTableObj
*
pTable
);
void
mgmtRemoveTableFromVgroup
(
SVgObj
*
pVgroup
,
SChildTableObj
*
pTable
);
void
mgmtSendCreateVnodeMsg
(
SVgObj
*
pVgroup
,
SRpcIpSet
*
ipSet
,
void
*
ahandle
);
void
mgmtSendCreateVnodeMsg
(
SVgObj
*
pVgroup
,
SRpcIpSet
*
ipSet
,
void
*
ahandle
);
void
mgmtSendDropVnodeMsg
(
int32_t
vgId
,
SRpcIpSet
*
ipSet
,
void
*
ahandle
);
void
mgmtSendDropVnodeMsg
(
int32_t
vgId
,
SRpcIpSet
*
ipSet
,
void
*
ahandle
);
void
mgmtSendCreateVgroupMsg
(
SVgObj
*
pVgroup
,
void
*
ahandle
);
SRpcIpSet
mgmtGetIpSetFromVgroup
(
SVgObj
*
pVgroup
);
SRpcIpSet
mgmtGetIpSetFromVgroup
(
SVgObj
*
pVgroup
);
SRpcIpSet
mgmtGetIpSetFromIp
(
uint32_t
ip
);
SRpcIpSet
mgmtGetIpSetFromIp
(
uint32_t
ip
);
...
...
src/mnode/src/mgmtBalance.c
浏览文件 @
787f6387
...
@@ -47,7 +47,7 @@ int32_t balanceAllocVnodes(SVgObj *pVgroup) {
...
@@ -47,7 +47,7 @@ int32_t balanceAllocVnodes(SVgObj *pVgroup) {
vnodeUsage
=
usage
;
vnodeUsage
=
usage
;
}
}
}
}
mgmt
ReleaseDnode
(
pDnode
);
mgmt
DecDnodeRef
(
pDnode
);
}
}
if
(
pSelDnode
==
NULL
)
{
if
(
pSelDnode
==
NULL
)
{
...
@@ -56,8 +56,7 @@ int32_t balanceAllocVnodes(SVgObj *pVgroup) {
...
@@ -56,8 +56,7 @@ int32_t balanceAllocVnodes(SVgObj *pVgroup) {
}
}
pVgroup
->
vnodeGid
[
0
].
dnodeId
=
pSelDnode
->
dnodeId
;
pVgroup
->
vnodeGid
[
0
].
dnodeId
=
pSelDnode
->
dnodeId
;
pVgroup
->
vnodeGid
[
0
].
privateIp
=
pSelDnode
->
privateIp
;
pVgroup
->
vnodeGid
[
0
].
pDnode
=
pSelDnode
;
pVgroup
->
vnodeGid
[
0
].
publicIp
=
pSelDnode
->
publicIp
;
mTrace
(
"dnode:%d, alloc one vnode to vgroup, openVnodes:%d"
,
pSelDnode
->
dnodeId
,
pSelDnode
->
openVnodes
);
mTrace
(
"dnode:%d, alloc one vnode to vgroup, openVnodes:%d"
,
pSelDnode
->
dnodeId
,
pSelDnode
->
openVnodes
);
return
TSDB_CODE_SUCCESS
;
return
TSDB_CODE_SUCCESS
;
...
...
src/mnode/src/mgmtDb.c
浏览文件 @
787f6387
...
@@ -527,7 +527,7 @@ static int32_t mgmtGetDbMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *pConn)
...
@@ -527,7 +527,7 @@ static int32_t mgmtGetDbMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *pConn)
pShow
->
rowSize
=
pShow
->
offset
[
cols
-
1
]
+
pShow
->
bytes
[
cols
-
1
];
pShow
->
rowSize
=
pShow
->
offset
[
cols
-
1
]
+
pShow
->
bytes
[
cols
-
1
];
pShow
->
numOfRows
=
pUser
->
pAcct
->
acctInfo
.
numOfDbs
;
pShow
->
numOfRows
=
pUser
->
pAcct
->
acctInfo
.
numOfDbs
;
mgmt
ReleaseUser
(
pUser
);
mgmt
DecUserRef
(
pUser
);
return
0
;
return
0
;
}
}
...
@@ -647,7 +647,7 @@ static int32_t mgmtRetrieveDbs(SShowObj *pShow, char *data, int32_t rows, void *
...
@@ -647,7 +647,7 @@ static int32_t mgmtRetrieveDbs(SShowObj *pShow, char *data, int32_t rows, void *
}
}
pShow
->
numOfReads
+=
numOfRows
;
pShow
->
numOfReads
+=
numOfRows
;
mgmt
ReleaseUser
(
pUser
);
mgmt
DecUserRef
(
pUser
);
return
numOfRows
;
return
numOfRows
;
}
}
...
...
src/mnode/src/mgmtDnode.c
浏览文件 @
787f6387
...
@@ -23,6 +23,7 @@
...
@@ -23,6 +23,7 @@
#include "tutil.h"
#include "tutil.h"
#include "tsocket.h"
#include "tsocket.h"
#include "tbalance.h"
#include "tbalance.h"
#include "tsync.h"
#include "dnode.h"
#include "dnode.h"
#include "mgmtDef.h"
#include "mgmtDef.h"
#include "mgmtLog.h"
#include "mgmtLog.h"
...
@@ -37,6 +38,8 @@
...
@@ -37,6 +38,8 @@
void
*
tsDnodeSdb
=
NULL
;
void
*
tsDnodeSdb
=
NULL
;
int32_t
tsDnodeUpdateSize
=
0
;
int32_t
tsDnodeUpdateSize
=
0
;
int32_t
tsAccessSquence
=
0
;
extern
void
*
tsMnodeSdb
;
extern
void
*
tsVgroupSdb
;
extern
void
*
tsVgroupSdb
;
static
int32_t
mgmtCreateDnode
(
uint32_t
ip
);
static
int32_t
mgmtCreateDnode
(
uint32_t
ip
);
...
@@ -99,7 +102,13 @@ static int32_t mgmtDnodeActionDelete(SSdbOper *pOper) {
...
@@ -99,7 +102,13 @@ static int32_t mgmtDnodeActionDelete(SSdbOper *pOper) {
}
}
}
}
mgmtDropMnode
(
pDnode
->
dnodeId
);
SMnodeObj
*
pMnode
=
mgmtGetMnode
(
pDnode
->
dnodeId
);
if
(
pMnode
!=
NULL
)
{
SSdbOper
oper
=
{.
type
=
SDB_OPER_LOCAL
,
.
table
=
tsMnodeSdb
,
.
pObj
=
pMnode
};
sdbDeleteRow
(
&
oper
);
mgmtReleaseMnode
(
pMnode
);
}
balanceNotify
();
balanceNotify
();
mTrace
(
"dnode:%d, all vgroups:%d is dropped from sdb"
,
pDnode
->
dnodeId
,
numOfVgroups
);
mTrace
(
"dnode:%d, all vgroups:%d is dropped from sdb"
,
pDnode
->
dnodeId
,
numOfVgroups
);
...
@@ -139,7 +148,7 @@ static int32_t mgmtDnodeActionRestored() {
...
@@ -139,7 +148,7 @@ static int32_t mgmtDnodeActionRestored() {
mgmtCreateDnode
(
ip
);
mgmtCreateDnode
(
ip
);
SDnodeObj
*
pDnode
=
mgmtGetDnodeByIp
(
ip
);
SDnodeObj
*
pDnode
=
mgmtGetDnodeByIp
(
ip
);
mgmtAddMnode
(
pDnode
->
dnodeId
);
mgmtAddMnode
(
pDnode
->
dnodeId
);
mgmt
ReleaseDnode
(
pDnode
);
mgmt
DecDnodeRef
(
pDnode
);
}
}
return
TSDB_CODE_SUCCESS
;
return
TSDB_CODE_SUCCESS
;
...
@@ -215,13 +224,17 @@ void *mgmtGetDnodeByIp(uint32_t ip) {
...
@@ -215,13 +224,17 @@ void *mgmtGetDnodeByIp(uint32_t ip) {
if
(
ip
==
pDnode
->
privateIp
)
{
if
(
ip
==
pDnode
->
privateIp
)
{
return
pDnode
;
return
pDnode
;
}
}
mgmt
ReleaseDnode
(
pDnode
);
mgmt
DecDnodeRef
(
pDnode
);
}
}
return
NULL
;
return
NULL
;
}
}
void
mgmtReleaseDnode
(
SDnodeObj
*
pDnode
)
{
void
mgmtIncDnodeRef
(
SDnodeObj
*
pDnode
)
{
sdbIncRef
(
tsDnodeSdb
,
pDnode
);
}
void
mgmtDecDnodeRef
(
SDnodeObj
*
pDnode
)
{
sdbDecRef
(
tsDnodeSdb
,
pDnode
);
sdbDecRef
(
tsDnodeSdb
,
pDnode
);
}
}
...
@@ -318,27 +331,27 @@ void mgmtProcessDnodeStatusMsg(SRpcMsg *rpcMsg) {
...
@@ -318,27 +331,27 @@ void mgmtProcessDnodeStatusMsg(SRpcMsg *rpcMsg) {
pDnode
->
alternativeRole
=
pStatus
->
alternativeRole
;
pDnode
->
alternativeRole
=
pStatus
->
alternativeRole
;
pDnode
->
totalVnodes
=
pStatus
->
numOfTotalVnodes
;
pDnode
->
totalVnodes
=
pStatus
->
numOfTotalVnodes
;
pDnode
->
moduleStatus
=
pStatus
->
moduleStatus
;
pDnode
->
moduleStatus
=
pStatus
->
moduleStatus
;
pDnode
->
lastAccess
=
tsAccessSquence
;
if
(
pStatus
->
dnodeId
==
0
)
{
if
(
pStatus
->
dnodeId
==
0
)
{
mTrace
(
"dnode:%d, first access, privateIp:%s, name:%s"
,
pDnode
->
dnodeId
,
taosIpStr
(
pDnode
->
privateIp
),
pDnode
->
dnodeName
);
mTrace
(
"dnode:%d, first access, privateIp:%s, name:%s"
,
pDnode
->
dnodeId
,
taosIpStr
(
pDnode
->
privateIp
),
pDnode
->
dnodeName
);
}
else
{
mTrace
(
"dnode:%d, status received, access times %d"
,
pDnode
->
dnodeId
,
pDnode
->
lastAccess
);
}
}
int32_t
openVnodes
=
htons
(
pStatus
->
openVnodes
);
int32_t
openVnodes
=
htons
(
pStatus
->
openVnodes
);
for
(
int32_t
j
=
0
;
j
<
openVnodes
;
++
j
)
{
for
(
int32_t
j
=
0
;
j
<
openVnodes
;
++
j
)
{
SVnodeLoad
*
pVload
=
&
pStatus
->
load
[
j
];
SVnodeLoad
*
pVload
=
&
pStatus
->
load
[
j
];
pDnode
->
vload
[
j
].
vgId
=
htonl
(
pVload
->
vgId
);
pVload
->
vgId
=
htonl
(
pVload
->
vgId
);
pDnode
->
vload
[
j
].
totalStorage
=
htobe64
(
pVload
->
totalStorage
);
pDnode
->
vload
[
j
].
compStorage
=
htobe64
(
pVload
->
compStorage
);
SVgObj
*
pVgroup
=
mgmtGetVgroup
(
pVload
->
vgId
);
pDnode
->
vload
[
j
].
pointsWritten
=
htobe64
(
pVload
->
pointsWritten
);
SVgObj
*
pVgroup
=
mgmtGetVgroup
(
pDnode
->
vload
[
j
].
vgId
);
if
(
pVgroup
==
NULL
)
{
if
(
pVgroup
==
NULL
)
{
SRpcIpSet
ipSet
=
mgmtGetIpSetFromIp
(
pDnode
->
privateIp
);
SRpcIpSet
ipSet
=
mgmtGetIpSetFromIp
(
pDnode
->
privateIp
);
mPrint
(
"dnode:%d, vgroup:%d not exist in mnode, drop it"
,
pDnode
->
dnodeId
,
p
Dnode
->
vload
[
j
].
vgId
);
mPrint
(
"dnode:%d, vgroup:%d not exist in mnode, drop it"
,
pDnode
->
dnodeId
,
p
Vload
->
vgId
);
mgmtSendDropVnodeMsg
(
p
Dnode
->
vload
[
j
].
vgId
,
&
ipSet
,
NULL
);
mgmtSendDropVnodeMsg
(
p
Vload
->
vgId
,
&
ipSet
,
NULL
);
}
else
{
}
else
{
mgmtUpdateVgroupStatus
(
pVgroup
,
pDnode
->
dnodeId
,
pVload
);
mgmtUpdateVgroupStatus
(
pVgroup
,
pDnode
,
pVload
);
mgmt
ReleaseVgroup
(
pVgroup
);
mgmt
DecVgroupRef
(
pVgroup
);
}
}
}
}
...
@@ -348,7 +361,7 @@ void mgmtProcessDnodeStatusMsg(SRpcMsg *rpcMsg) {
...
@@ -348,7 +361,7 @@ void mgmtProcessDnodeStatusMsg(SRpcMsg *rpcMsg) {
balanceNotify
();
balanceNotify
();
}
}
mgmt
ReleaseDnode
(
pDnode
);
mgmt
DecDnodeRef
(
pDnode
);
int32_t
contLen
=
sizeof
(
SDMStatusRsp
)
+
TSDB_MAX_VNODES
*
sizeof
(
SDMVgroupAccess
);
int32_t
contLen
=
sizeof
(
SDMStatusRsp
)
+
TSDB_MAX_VNODES
*
sizeof
(
SDMVgroupAccess
);
SDMStatusRsp
*
pRsp
=
rpcMallocCont
(
contLen
);
SDMStatusRsp
*
pRsp
=
rpcMallocCont
(
contLen
);
...
@@ -444,7 +457,7 @@ static int32_t mgmtDropDnodeByIp(uint32_t ip) {
...
@@ -444,7 +457,7 @@ static int32_t mgmtDropDnodeByIp(uint32_t ip) {
return
TSDB_CODE_NO_REMOVE_MASTER
;
return
TSDB_CODE_NO_REMOVE_MASTER
;
}
}
#ifndef _
VPEER
#ifndef _
SYNC
return
mgmtDropDnode
(
pDnode
);
return
mgmtDropDnode
(
pDnode
);
#else
#else
return
balanceDropDnode
(
pDnode
);
return
balanceDropDnode
(
pDnode
);
...
@@ -554,7 +567,7 @@ static int32_t mgmtGetDnodeMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *pCo
...
@@ -554,7 +567,7 @@ static int32_t mgmtGetDnodeMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *pCo
pShow
->
rowSize
=
pShow
->
offset
[
cols
-
1
]
+
pShow
->
bytes
[
cols
-
1
];
pShow
->
rowSize
=
pShow
->
offset
[
cols
-
1
]
+
pShow
->
bytes
[
cols
-
1
];
pShow
->
pNode
=
NULL
;
pShow
->
pNode
=
NULL
;
mgmt
ReleaseUser
(
pUser
);
mgmt
DecUserRef
(
pUser
);
return
0
;
return
0
;
}
}
...
@@ -604,7 +617,7 @@ static int32_t mgmtRetrieveDnodes(SShowObj *pShow, char *data, int32_t rows, voi
...
@@ -604,7 +617,7 @@ static int32_t mgmtRetrieveDnodes(SShowObj *pShow, char *data, int32_t rows, voi
numOfRows
++
;
numOfRows
++
;
mgmt
ReleaseDnode
(
pDnode
);
mgmt
DecDnodeRef
(
pDnode
);
}
}
pShow
->
numOfReads
+=
numOfRows
;
pShow
->
numOfReads
+=
numOfRows
;
...
@@ -661,7 +674,7 @@ static int32_t mgmtGetModuleMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *pC
...
@@ -661,7 +674,7 @@ static int32_t mgmtGetModuleMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *pC
pShow
->
numOfRows
=
mgmtGetDnodesNum
()
*
TSDB_MOD_MAX
;
pShow
->
numOfRows
=
mgmtGetDnodesNum
()
*
TSDB_MOD_MAX
;
pShow
->
rowSize
=
pShow
->
offset
[
cols
-
1
]
+
pShow
->
bytes
[
cols
-
1
];
pShow
->
rowSize
=
pShow
->
offset
[
cols
-
1
]
+
pShow
->
bytes
[
cols
-
1
];
pShow
->
pNode
=
NULL
;
pShow
->
pNode
=
NULL
;
mgmt
ReleaseUser
(
pUser
);
mgmt
DecUserRef
(
pUser
);
return
0
;
return
0
;
}
}
...
@@ -712,7 +725,7 @@ int32_t mgmtRetrieveModules(SShowObj *pShow, char *data, int32_t rows, void *pCo
...
@@ -712,7 +725,7 @@ int32_t mgmtRetrieveModules(SShowObj *pShow, char *data, int32_t rows, void *pCo
numOfRows
++
;
numOfRows
++
;
}
}
mgmt
ReleaseDnode
(
pDnode
);
mgmt
DecDnodeRef
(
pDnode
);
}
}
pShow
->
numOfReads
+=
numOfRows
;
pShow
->
numOfReads
+=
numOfRows
;
...
@@ -762,7 +775,7 @@ static int32_t mgmtGetConfigMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *pC
...
@@ -762,7 +775,7 @@ static int32_t mgmtGetConfigMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *pC
pShow
->
rowSize
=
pShow
->
offset
[
cols
-
1
]
+
pShow
->
bytes
[
cols
-
1
];
pShow
->
rowSize
=
pShow
->
offset
[
cols
-
1
]
+
pShow
->
bytes
[
cols
-
1
];
pShow
->
pNode
=
NULL
;
pShow
->
pNode
=
NULL
;
mgmt
ReleaseUser
(
pUser
);
mgmt
DecUserRef
(
pUser
);
return
0
;
return
0
;
}
}
...
@@ -840,35 +853,18 @@ static int32_t mgmtGetVnodeMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *pCo
...
@@ -840,35 +853,18 @@ static int32_t mgmtGetVnodeMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *pCo
if
(
pShow
->
payloadLen
>
0
)
{
if
(
pShow
->
payloadLen
>
0
)
{
uint32_t
ip
=
ip2uint
(
pShow
->
payload
);
uint32_t
ip
=
ip2uint
(
pShow
->
payload
);
pDnode
=
mgmtGetDnodeByIp
(
ip
);
pDnode
=
mgmtGetDnodeByIp
(
ip
);
if
(
NULL
==
pDnode
)
{
return
TSDB_CODE_NODE_OFFLINE
;
}
SVnodeLoad
*
pVnode
;
pShow
->
numOfRows
=
0
;
for
(
int32_t
i
=
0
;
i
<
TSDB_MAX_VNODES
;
i
++
)
{
pVnode
=
&
pDnode
->
vload
[
i
];
if
(
0
!=
pVnode
->
vgId
)
{
pShow
->
numOfRows
++
;
}
}
pShow
->
pNode
=
pDnode
;
}
else
{
}
else
{
while
(
true
)
{
mgmtGetNextDnode
(
NULL
,
(
SDnodeObj
**
)
&
pDnode
);
pShow
->
pNode
=
mgmtGetNextDnode
(
pShow
->
pNode
,
(
SDnodeObj
**
)
&
pDnode
);
}
if
(
pDnode
==
NULL
)
break
;
pShow
->
numOfRows
+=
pDnode
->
openVnodes
;
if
(
0
==
pShow
->
numOfRows
)
return
TSDB_CODE_NODE_OFFLINE
;
}
pShow
->
pNode
=
NULL
;
if
(
pDnode
!=
NULL
)
{
}
pShow
->
numOfRows
+=
pDnode
->
openVnodes
;
mgmtDecDnodeRef
(
pDnode
);
}
pShow
->
rowSize
=
pShow
->
offset
[
cols
-
1
]
+
pShow
->
bytes
[
cols
-
1
];
pShow
->
rowSize
=
pShow
->
offset
[
cols
-
1
]
+
pShow
->
bytes
[
cols
-
1
];
mgmtReleaseDnode
(
pDnode
)
;
pShow
->
pNode
=
pDnode
;
mgmt
ReleaseUser
(
pUser
);
mgmt
DecUserRef
(
pUser
);
return
0
;
return
0
;
}
}
...
@@ -881,35 +877,35 @@ static int32_t mgmtRetrieveVnodes(SShowObj *pShow, char *data, int32_t rows, voi
...
@@ -881,35 +877,35 @@ static int32_t mgmtRetrieveVnodes(SShowObj *pShow, char *data, int32_t rows, voi
if
(
0
==
rows
)
return
0
;
if
(
0
==
rows
)
return
0
;
if
(
pShow
->
payloadLen
)
{
pDnode
=
(
SDnodeObj
*
)(
pShow
->
pNode
);
// output the vnodes info of the designated dnode. And output all vnodes of this dnode, instead of rows (max 100)
if
(
pDnode
!=
NULL
)
{
pDnode
=
(
SDnodeObj
*
)(
pShow
->
pNode
);
void
*
pNode
=
NULL
;
if
(
pDnode
!=
NULL
)
{
SVgObj
*
pVgroup
;
SVnodeLoad
*
pVnode
;
while
(
1
)
{
for
(
int32_t
i
=
0
;
i
<
TSDB_MAX_VNODES
;
i
++
)
{
pNode
=
mgmtGetNextVgroup
(
pNode
,
&
pVgroup
);
pVnode
=
&
pDnode
->
vload
[
i
];
if
(
pVgroup
==
NULL
)
break
;
if
(
0
==
pVnode
->
vgId
)
{
continue
;
for
(
int32_t
i
=
0
;
i
<
pVgroup
->
numOfVnodes
;
++
i
)
{
SVnodeGid
*
pVgid
=
&
pVgroup
->
vnodeGid
[
i
];
if
(
pVgid
->
pDnode
==
pDnode
)
{
cols
=
0
;
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
*
(
uint32_t
*
)
pWrite
=
pVgroup
->
vgId
;
cols
++
;
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
strcpy
(
pWrite
,
mgmtGetMnodeRoleStr
(
pVgid
->
role
));
cols
++
;
}
}
cols
=
0
;
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
*
(
uint32_t
*
)
pWrite
=
pVnode
->
vgId
;
cols
++
;
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
strcpy
(
pWrite
,
pVnode
->
status
?
"ready"
:
"offline"
);
cols
++
;
numOfRows
++
;
}
}
mgmtDecVgroupRef
(
pVgroup
);
}
}
}
else
{
}
else
{
// TODO: output all vnodes of all dnodes
numOfRows
=
0
;
numOfRows
=
0
;
}
}
pShow
->
numOfReads
+=
numOfRows
;
pShow
->
numOfReads
+=
numOfRows
;
return
numOfRows
;
return
numOfRows
;
}
}
...
...
src/mnode/src/mgmtMain.c
浏览文件 @
787f6387
...
@@ -149,12 +149,12 @@ void mgmtCleanUpSystem() {
...
@@ -149,12 +149,12 @@ void mgmtCleanUpSystem() {
mgmtCleanUpShell
();
mgmtCleanUpShell
();
mgmtCleanupDClient
();
mgmtCleanupDClient
();
mgmtCleanupDServer
();
mgmtCleanupDServer
();
mgmtCleanUpAccts
();
mgmtCleanUpTables
();
mgmtCleanUpTables
();
mgmtCleanUpVgroups
();
mgmtCleanUpVgroups
();
mgmtCleanUpDbs
();
mgmtCleanUpDbs
();
mgmtCleanupDnodes
();
mgmtCleanupDnodes
();
mgmtCleanUpUsers
();
mgmtCleanUpUsers
();
mgmtCleanUpAccts
();
sdbCleanUp
();
sdbCleanUp
();
taosTmrCleanUp
(
tsMgmtTmr
);
taosTmrCleanUp
(
tsMgmtTmr
);
tsMgmtIsRunning
=
false
;
tsMgmtIsRunning
=
false
;
...
...
src/mnode/src/mgmtMnode.c
浏览文件 @
787f6387
...
@@ -30,7 +30,7 @@
...
@@ -30,7 +30,7 @@
#include "mgmtShell.h"
#include "mgmtShell.h"
#include "mgmtUser.h"
#include "mgmtUser.h"
static
void
*
tsMnodeSdb
=
NULL
;
void
*
tsMnodeSdb
=
NULL
;
static
int32_t
tsMnodeUpdateSize
=
0
;
static
int32_t
tsMnodeUpdateSize
=
0
;
static
int32_t
mgmtGetMnodeMeta
(
STableMetaMsg
*
pMeta
,
SShowObj
*
pShow
,
void
*
pConn
);
static
int32_t
mgmtGetMnodeMeta
(
STableMetaMsg
*
pMeta
,
SShowObj
*
pShow
,
void
*
pConn
);
static
int32_t
mgmtRetrieveMnodes
(
SShowObj
*
pShow
,
char
*
data
,
int32_t
rows
,
void
*
pConn
);
static
int32_t
mgmtRetrieveMnodes
(
SShowObj
*
pShow
,
char
*
data
,
int32_t
rows
,
void
*
pConn
);
...
@@ -47,7 +47,7 @@ static int32_t mgmtMnodeActionInsert(SSdbOper *pOper) {
...
@@ -47,7 +47,7 @@ static int32_t mgmtMnodeActionInsert(SSdbOper *pOper) {
pMnode
->
pDnode
=
pDnode
;
pMnode
->
pDnode
=
pDnode
;
pDnode
->
isMgmt
=
true
;
pDnode
->
isMgmt
=
true
;
mgmt
ReleaseDnode
(
pDnode
);
mgmt
DecDnodeRef
(
pDnode
);
return
TSDB_CODE_SUCCESS
;
return
TSDB_CODE_SUCCESS
;
}
}
...
@@ -58,7 +58,7 @@ static int32_t mgmtMnodeActionDelete(SSdbOper *pOper) {
...
@@ -58,7 +58,7 @@ static int32_t mgmtMnodeActionDelete(SSdbOper *pOper) {
SDnodeObj
*
pDnode
=
mgmtGetDnode
(
pMnode
->
mnodeId
);
SDnodeObj
*
pDnode
=
mgmtGetDnode
(
pMnode
->
mnodeId
);
if
(
pDnode
==
NULL
)
return
TSDB_CODE_DNODE_NOT_EXIST
;
if
(
pDnode
==
NULL
)
return
TSDB_CODE_DNODE_NOT_EXIST
;
pDnode
->
isMgmt
=
false
;
pDnode
->
isMgmt
=
false
;
mgmt
ReleaseDnode
(
pDnode
);
mgmt
DecDnodeRef
(
pDnode
);
mTrace
(
"mnode:%d, is dropped from sdb"
,
pMnode
->
mnodeId
);
mTrace
(
"mnode:%d, is dropped from sdb"
,
pMnode
->
mnodeId
);
return
TSDB_CODE_SUCCESS
;
return
TSDB_CODE_SUCCESS
;
...
@@ -314,7 +314,7 @@ static int32_t mgmtGetMnodeMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *pCo
...
@@ -314,7 +314,7 @@ static int32_t mgmtGetMnodeMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *pCo
pShow
->
numOfRows
=
mgmtGetMnodesNum
();
pShow
->
numOfRows
=
mgmtGetMnodesNum
();
pShow
->
rowSize
=
pShow
->
offset
[
cols
-
1
]
+
pShow
->
bytes
[
cols
-
1
];
pShow
->
rowSize
=
pShow
->
offset
[
cols
-
1
]
+
pShow
->
bytes
[
cols
-
1
];
pShow
->
pNode
=
NULL
;
pShow
->
pNode
=
NULL
;
mgmt
ReleaseUser
(
pUser
);
mgmt
DecUserRef
(
pUser
);
return
0
;
return
0
;
}
}
...
...
src/mnode/src/mgmtProfile.c
浏览文件 @
787f6387
...
@@ -790,12 +790,12 @@ void *mgmtMallocQueuedMsg(SRpcMsg *rpcMsg) {
...
@@ -790,12 +790,12 @@ void *mgmtMallocQueuedMsg(SRpcMsg *rpcMsg) {
void
mgmtFreeQueuedMsg
(
SQueuedMsg
*
pMsg
)
{
void
mgmtFreeQueuedMsg
(
SQueuedMsg
*
pMsg
)
{
if
(
pMsg
!=
NULL
)
{
if
(
pMsg
!=
NULL
)
{
rpcFreeCont
(
pMsg
->
pCont
);
rpcFreeCont
(
pMsg
->
pCont
);
if
(
pMsg
->
pUser
)
mgmt
ReleaseUser
(
pMsg
->
pUser
);
if
(
pMsg
->
pUser
)
mgmt
DecUserRef
(
pMsg
->
pUser
);
if
(
pMsg
->
pDb
)
mgmtDecDbRef
(
pMsg
->
pDb
);
if
(
pMsg
->
pDb
)
mgmtDecDbRef
(
pMsg
->
pDb
);
if
(
pMsg
->
pVgroup
)
mgmt
ReleaseVgroup
(
pMsg
->
pVgroup
);
if
(
pMsg
->
pVgroup
)
mgmt
DecVgroupRef
(
pMsg
->
pVgroup
);
if
(
pMsg
->
pTable
)
mgmtDecTableRef
(
pMsg
->
pTable
);
if
(
pMsg
->
pTable
)
mgmtDecTableRef
(
pMsg
->
pTable
);
if
(
pMsg
->
pAcct
)
mgmtDecAcctRef
(
pMsg
->
pAcct
);
if
(
pMsg
->
pAcct
)
mgmtDecAcctRef
(
pMsg
->
pAcct
);
if
(
pMsg
->
pDnode
)
mgmt
ReleaseDnode
(
pMsg
->
pDnode
);
if
(
pMsg
->
pDnode
)
mgmt
DecDnodeRef
(
pMsg
->
pDnode
);
free
(
pMsg
);
free
(
pMsg
);
}
}
}
}
...
...
src/mnode/src/mgmtShell.c
浏览文件 @
787f6387
...
@@ -371,11 +371,11 @@ static int mgmtShellRetriveAuth(char *user, char *spi, char *encrypt, char *secr
...
@@ -371,11 +371,11 @@ static int mgmtShellRetriveAuth(char *user, char *spi, char *encrypt, char *secr
SUserObj
*
pUser
=
mgmtGetUser
(
user
);
SUserObj
*
pUser
=
mgmtGetUser
(
user
);
if
(
pUser
==
NULL
)
{
if
(
pUser
==
NULL
)
{
*
secret
=
0
;
*
secret
=
0
;
mgmt
ReleaseUser
(
pUser
);
mgmt
DecUserRef
(
pUser
);
return
TSDB_CODE_INVALID_USER
;
return
TSDB_CODE_INVALID_USER
;
}
else
{
}
else
{
memcpy
(
secret
,
pUser
->
pass
,
TSDB_KEY_LEN
);
memcpy
(
secret
,
pUser
->
pass
,
TSDB_KEY_LEN
);
mgmt
ReleaseUser
(
pUser
);
mgmt
DecUserRef
(
pUser
);
return
TSDB_CODE_SUCCESS
;
return
TSDB_CODE_SUCCESS
;
}
}
}
}
...
...
src/mnode/src/mgmtTable.c
浏览文件 @
787f6387
...
@@ -97,7 +97,7 @@ static int32_t mgmtChildTableActionInsert(SSdbOper *pOper) {
...
@@ -97,7 +97,7 @@ static int32_t mgmtChildTableActionInsert(SSdbOper *pOper) {
mError
(
"ctable:%s, not in vgroup:%d"
,
pTable
->
info
.
tableId
,
pTable
->
vgId
);
mError
(
"ctable:%s, not in vgroup:%d"
,
pTable
->
info
.
tableId
,
pTable
->
vgId
);
return
TSDB_CODE_INVALID_VGROUP_ID
;
return
TSDB_CODE_INVALID_VGROUP_ID
;
}
}
mgmt
ReleaseVgroup
(
pVgroup
);
mgmt
DecVgroupRef
(
pVgroup
);
SDbObj
*
pDb
=
mgmtGetDb
(
pVgroup
->
dbName
);
SDbObj
*
pDb
=
mgmtGetDb
(
pVgroup
->
dbName
);
if
(
pDb
==
NULL
)
{
if
(
pDb
==
NULL
)
{
...
@@ -139,7 +139,7 @@ static int32_t mgmtChildTableActionDelete(SSdbOper *pOper) {
...
@@ -139,7 +139,7 @@ static int32_t mgmtChildTableActionDelete(SSdbOper *pOper) {
if
(
pVgroup
==
NULL
)
{
if
(
pVgroup
==
NULL
)
{
return
TSDB_CODE_INVALID_VGROUP_ID
;
return
TSDB_CODE_INVALID_VGROUP_ID
;
}
}
mgmt
ReleaseVgroup
(
pVgroup
);
mgmt
DecVgroupRef
(
pVgroup
);
SDbObj
*
pDb
=
mgmtGetDb
(
pVgroup
->
dbName
);
SDbObj
*
pDb
=
mgmtGetDb
(
pVgroup
->
dbName
);
if
(
pDb
==
NULL
)
{
if
(
pDb
==
NULL
)
{
...
@@ -275,7 +275,7 @@ static int32_t mgmtChildTableActionRestored() {
...
@@ -275,7 +275,7 @@ static int32_t mgmtChildTableActionRestored() {
pNode
=
pLastNode
;
pNode
=
pLastNode
;
continue
;
continue
;
}
}
mgmt
ReleaseVgroup
(
pVgroup
);
mgmt
DecVgroupRef
(
pVgroup
);
if
(
strcmp
(
pVgroup
->
dbName
,
pDb
->
name
)
!=
0
)
{
if
(
strcmp
(
pVgroup
->
dbName
,
pDb
->
name
)
!=
0
)
{
mError
(
"ctable:%s, db:%s not match with vgroup:%d db:%s sid:%d, discard it"
,
mError
(
"ctable:%s, db:%s not match with vgroup:%d db:%s sid:%d, discard it"
,
...
@@ -1194,17 +1194,15 @@ static void mgmtProcessSuperTableVgroupMsg(SQueuedMsg *pMsg) {
...
@@ -1194,17 +1194,15 @@ static void mgmtProcessSuperTableVgroupMsg(SQueuedMsg *pMsg) {
pRsp
->
vgroups
[
vg
].
vgId
=
htonl
(
vgId
);
pRsp
->
vgroups
[
vg
].
vgId
=
htonl
(
vgId
);
for
(
int32_t
vn
=
0
;
vn
<
pVgroup
->
numOfVnodes
;
++
vn
)
{
for
(
int32_t
vn
=
0
;
vn
<
pVgroup
->
numOfVnodes
;
++
vn
)
{
SDnodeObj
*
pDnode
=
mgmtGetDnode
(
pVgroup
->
vnodeGid
[
vn
].
dnodeId
)
;
SDnodeObj
*
pDnode
=
pVgroup
->
vnodeGid
[
vn
].
pDnode
;
if
(
pDnode
==
NULL
)
break
;
if
(
pDnode
==
NULL
)
break
;
pRsp
->
vgroups
[
vg
].
ipAddr
[
vn
].
ip
=
htonl
(
pDnode
->
privateIp
);
pRsp
->
vgroups
[
vg
].
ipAddr
[
vn
].
ip
=
htonl
(
pDnode
->
privateIp
);
pRsp
->
vgroups
[
vg
].
ipAddr
[
vn
].
port
=
htons
(
tsDnodeShellPort
);
pRsp
->
vgroups
[
vg
].
ipAddr
[
vn
].
port
=
htons
(
tsDnodeShellPort
);
pRsp
->
vgroups
[
vg
].
numOfIps
++
;
pRsp
->
vgroups
[
vg
].
numOfIps
++
;
mgmtReleaseDnode
(
pDnode
);
}
}
mgmt
ReleaseVgroup
(
pVgroup
);
mgmt
DecVgroupRef
(
pVgroup
);
}
}
pRsp
->
numOfVgroups
=
htonl
(
vg
);
pRsp
->
numOfVgroups
=
htonl
(
vg
);
...
@@ -1613,7 +1611,7 @@ static int32_t mgmtDoGetChildTableMeta(SQueuedMsg *pMsg, STableMetaMsg *pMeta) {
...
@@ -1613,7 +1611,7 @@ static int32_t mgmtDoGetChildTableMeta(SQueuedMsg *pMsg, STableMetaMsg *pMeta) {
pMeta
->
vgroup
.
ipAddr
[
i
].
port
=
htonl
(
tsDnodeShellPort
);
pMeta
->
vgroup
.
ipAddr
[
i
].
port
=
htonl
(
tsDnodeShellPort
);
}
}
pMeta
->
vgroup
.
numOfIps
++
;
pMeta
->
vgroup
.
numOfIps
++
;
mgmt
ReleaseDnode
(
pDnode
);
mgmt
DecDnodeRef
(
pDnode
);
}
}
pMeta
->
vgroup
.
vgId
=
htonl
(
pVgroup
->
vgId
);
pMeta
->
vgroup
.
vgId
=
htonl
(
pVgroup
->
vgId
);
...
@@ -1742,7 +1740,7 @@ static SChildTableObj* mgmtGetTableByPos(uint32_t dnodeId, int32_t vnode, int32_
...
@@ -1742,7 +1740,7 @@ static SChildTableObj* mgmtGetTableByPos(uint32_t dnodeId, int32_t vnode, int32_
SChildTableObj
*
pTable
=
pVgroup
->
tableList
[
sid
];
SChildTableObj
*
pTable
=
pVgroup
->
tableList
[
sid
];
mgmtIncTableRef
((
STableObj
*
)
pTable
);
mgmtIncTableRef
((
STableObj
*
)
pTable
);
mgmt
ReleaseVgroup
(
pVgroup
);
mgmt
DecVgroupRef
(
pVgroup
);
return
pTable
;
return
pTable
;
}
}
...
...
src/mnode/src/mgmtUser.c
浏览文件 @
787f6387
...
@@ -150,7 +150,11 @@ SUserObj *mgmtGetUser(char *name) {
...
@@ -150,7 +150,11 @@ SUserObj *mgmtGetUser(char *name) {
return
(
SUserObj
*
)
sdbGetRow
(
tsUserSdb
,
name
);
return
(
SUserObj
*
)
sdbGetRow
(
tsUserSdb
,
name
);
}
}
void
mgmtReleaseUser
(
SUserObj
*
pUser
)
{
void
mgmtIncUserRef
(
SUserObj
*
pUser
)
{
return
sdbIncRef
(
tsUserSdb
,
pUser
);
}
void
mgmtDecUserRef
(
SUserObj
*
pUser
)
{
return
sdbDecRef
(
tsUserSdb
,
pUser
);
return
sdbDecRef
(
tsUserSdb
,
pUser
);
}
}
...
@@ -183,7 +187,7 @@ int32_t mgmtCreateUser(SAcctObj *pAcct, char *name, char *pass) {
...
@@ -183,7 +187,7 @@ int32_t mgmtCreateUser(SAcctObj *pAcct, char *name, char *pass) {
SUserObj
*
pUser
=
mgmtGetUser
(
name
);
SUserObj
*
pUser
=
mgmtGetUser
(
name
);
if
(
pUser
!=
NULL
)
{
if
(
pUser
!=
NULL
)
{
mTrace
(
"user:%s is already there"
,
name
);
mTrace
(
"user:%s is already there"
,
name
);
mgmt
ReleaseUser
(
pUser
);
mgmt
DecUserRef
(
pUser
);
return
TSDB_CODE_USER_ALREADY_EXIST
;
return
TSDB_CODE_USER_ALREADY_EXIST
;
}
}
...
@@ -273,7 +277,7 @@ static int32_t mgmtGetUserMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *pCon
...
@@ -273,7 +277,7 @@ static int32_t mgmtGetUserMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *pCon
pShow
->
numOfRows
=
pUser
->
pAcct
->
acctInfo
.
numOfUsers
;
pShow
->
numOfRows
=
pUser
->
pAcct
->
acctInfo
.
numOfUsers
;
pShow
->
rowSize
=
pShow
->
offset
[
cols
-
1
]
+
pShow
->
bytes
[
cols
-
1
];
pShow
->
rowSize
=
pShow
->
offset
[
cols
-
1
]
+
pShow
->
bytes
[
cols
-
1
];
mgmt
ReleaseUser
(
pUser
);
mgmt
DecUserRef
(
pUser
);
return
0
;
return
0
;
}
}
...
@@ -308,7 +312,7 @@ static int32_t mgmtRetrieveUsers(SShowObj *pShow, char *data, int32_t rows, void
...
@@ -308,7 +312,7 @@ static int32_t mgmtRetrieveUsers(SShowObj *pShow, char *data, int32_t rows, void
cols
++
;
cols
++
;
numOfRows
++
;
numOfRows
++
;
mgmt
ReleaseUser
(
pUser
);
mgmt
DecUserRef
(
pUser
);
}
}
pShow
->
numOfReads
+=
numOfRows
;
pShow
->
numOfReads
+=
numOfRows
;
return
numOfRows
;
return
numOfRows
;
...
@@ -356,7 +360,7 @@ static void mgmtProcessAlterUserMsg(SQueuedMsg *pMsg) {
...
@@ -356,7 +360,7 @@ static void mgmtProcessAlterUserMsg(SQueuedMsg *pMsg) {
if
(
strcmp
(
pUser
->
user
,
"monitor"
)
==
0
||
(
strcmp
(
pUser
->
user
+
1
,
pUser
->
acct
)
==
0
&&
pUser
->
user
[
0
]
==
'_'
))
{
if
(
strcmp
(
pUser
->
user
,
"monitor"
)
==
0
||
(
strcmp
(
pUser
->
user
+
1
,
pUser
->
acct
)
==
0
&&
pUser
->
user
[
0
]
==
'_'
))
{
mgmtSendSimpleResp
(
pMsg
->
thandle
,
TSDB_CODE_NO_RIGHTS
);
mgmtSendSimpleResp
(
pMsg
->
thandle
,
TSDB_CODE_NO_RIGHTS
);
mgmt
ReleaseUser
(
pUser
);
mgmt
DecUserRef
(
pUser
);
return
;
return
;
}
}
...
@@ -432,7 +436,7 @@ static void mgmtProcessAlterUserMsg(SQueuedMsg *pMsg) {
...
@@ -432,7 +436,7 @@ static void mgmtProcessAlterUserMsg(SQueuedMsg *pMsg) {
mgmtSendSimpleResp
(
pMsg
->
thandle
,
TSDB_CODE_NO_RIGHTS
);
mgmtSendSimpleResp
(
pMsg
->
thandle
,
TSDB_CODE_NO_RIGHTS
);
}
}
mgmt
ReleaseUser
(
pUser
);
mgmt
DecUserRef
(
pUser
);
}
}
static
void
mgmtProcessDropUserMsg
(
SQueuedMsg
*
pMsg
)
{
static
void
mgmtProcessDropUserMsg
(
SQueuedMsg
*
pMsg
)
{
...
@@ -449,7 +453,7 @@ static void mgmtProcessDropUserMsg(SQueuedMsg *pMsg) {
...
@@ -449,7 +453,7 @@ static void mgmtProcessDropUserMsg(SQueuedMsg *pMsg) {
if
(
strcmp
(
pUser
->
user
,
"monitor"
)
==
0
||
strcmp
(
pUser
->
user
,
pUser
->
acct
)
==
0
||
if
(
strcmp
(
pUser
->
user
,
"monitor"
)
==
0
||
strcmp
(
pUser
->
user
,
pUser
->
acct
)
==
0
||
(
strcmp
(
pUser
->
user
+
1
,
pUser
->
acct
)
==
0
&&
pUser
->
user
[
0
]
==
'_'
))
{
(
strcmp
(
pUser
->
user
+
1
,
pUser
->
acct
)
==
0
&&
pUser
->
user
[
0
]
==
'_'
))
{
mgmtSendSimpleResp
(
pMsg
->
thandle
,
TSDB_CODE_NO_RIGHTS
);
mgmtSendSimpleResp
(
pMsg
->
thandle
,
TSDB_CODE_NO_RIGHTS
);
mgmt
ReleaseUser
(
pUser
);
mgmt
DecUserRef
(
pUser
);
return
;
return
;
}
}
...
@@ -478,7 +482,7 @@ static void mgmtProcessDropUserMsg(SQueuedMsg *pMsg) {
...
@@ -478,7 +482,7 @@ static void mgmtProcessDropUserMsg(SQueuedMsg *pMsg) {
}
}
mgmtSendSimpleResp
(
pMsg
->
thandle
,
code
);
mgmtSendSimpleResp
(
pMsg
->
thandle
,
code
);
mgmt
ReleaseUser
(
pUser
);
mgmt
DecUserRef
(
pUser
);
}
}
void
mgmtDropAllUsers
(
SAcctObj
*
pAcct
)
{
void
mgmtDropAllUsers
(
SAcctObj
*
pAcct
)
{
...
@@ -504,7 +508,7 @@ void mgmtDropAllUsers(SAcctObj *pAcct) {
...
@@ -504,7 +508,7 @@ void mgmtDropAllUsers(SAcctObj *pAcct) {
numOfUsers
++
;
numOfUsers
++
;
}
}
mgmt
ReleaseUser
(
pUser
);
mgmt
DecUserRef
(
pUser
);
}
}
mTrace
(
"acct:%s, all users:%d is dropped from sdb"
,
pAcct
->
user
,
numOfUsers
);
mTrace
(
"acct:%s, all users:%d is dropped from sdb"
,
pAcct
->
user
,
numOfUsers
);
...
...
src/mnode/src/mgmtVgroup.c
浏览文件 @
787f6387
...
@@ -44,9 +44,7 @@ static int32_t mgmtRetrieveVgroups(SShowObj *pShow, char *data, int32_t rows, vo
...
@@ -44,9 +44,7 @@ static int32_t mgmtRetrieveVgroups(SShowObj *pShow, char *data, int32_t rows, vo
static
void
mgmtProcessCreateVnodeRsp
(
SRpcMsg
*
rpcMsg
);
static
void
mgmtProcessCreateVnodeRsp
(
SRpcMsg
*
rpcMsg
);
static
void
mgmtProcessDropVnodeRsp
(
SRpcMsg
*
rpcMsg
);
static
void
mgmtProcessDropVnodeRsp
(
SRpcMsg
*
rpcMsg
);
static
void
mgmtProcessVnodeCfgMsg
(
SRpcMsg
*
rpcMsg
)
;
static
void
mgmtProcessVnodeCfgMsg
(
SRpcMsg
*
rpcMsg
)
;
static
void
mgmtSendDropVgroupMsg
(
SVgObj
*
pVgroup
,
void
*
ahandle
);
static
void
mgmtSendDropVgroupMsg
(
SVgObj
*
pVgroup
,
void
*
ahandle
);
static
void
mgmtSendCreateVgroupMsg
(
SVgObj
*
pVgroup
,
void
*
ahandle
);
static
int32_t
mgmtVgroupActionDestroy
(
SSdbOper
*
pOper
)
{
static
int32_t
mgmtVgroupActionDestroy
(
SSdbOper
*
pOper
)
{
SVgObj
*
pVgroup
=
pOper
->
pObj
;
SVgObj
*
pVgroup
=
pOper
->
pObj
;
...
@@ -68,7 +66,6 @@ static int32_t mgmtVgroupActionInsert(SSdbOper *pOper) {
...
@@ -68,7 +66,6 @@ static int32_t mgmtVgroupActionInsert(SSdbOper *pOper) {
if
(
pDb
==
NULL
)
{
if
(
pDb
==
NULL
)
{
return
TSDB_CODE_INVALID_DB
;
return
TSDB_CODE_INVALID_DB
;
}
}
mgmtDecDbRef
(
pDb
);
pVgroup
->
pDb
=
pDb
;
pVgroup
->
pDb
=
pDb
;
pVgroup
->
prev
=
NULL
;
pVgroup
->
prev
=
NULL
;
...
@@ -91,15 +88,13 @@ static int32_t mgmtVgroupActionInsert(SSdbOper *pOper) {
...
@@ -91,15 +88,13 @@ static int32_t mgmtVgroupActionInsert(SSdbOper *pOper) {
for
(
int32_t
i
=
0
;
i
<
pVgroup
->
numOfVnodes
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
pVgroup
->
numOfVnodes
;
++
i
)
{
SDnodeObj
*
pDnode
=
mgmtGetDnode
(
pVgroup
->
vnodeGid
[
i
].
dnodeId
);
SDnodeObj
*
pDnode
=
mgmtGetDnode
(
pVgroup
->
vnodeGid
[
i
].
dnodeId
);
if
(
pDnode
!=
NULL
)
{
if
(
pDnode
!=
NULL
)
{
pVgroup
->
vnodeGid
[
i
].
privateIp
=
pDnode
->
privateIp
;
pVgroup
->
vnodeGid
[
i
].
pDnode
=
pDnode
;
pVgroup
->
vnodeGid
[
i
].
publicIp
=
pDnode
->
publicIp
;
atomic_add_fetch_32
(
&
pDnode
->
openVnodes
,
1
);
atomic_add_fetch_32
(
&
pDnode
->
openVnodes
,
1
);
mgmtDecDnodeRef
(
pDnode
);
mgmtReleaseDnode
(
pDnode
);
}
}
}
}
mgmtAddVgroupIntoDb
(
pVgroup
);
mgmtAddVgroupIntoDb
(
pVgroup
);
mgmtIncDbRef
(
pVgroup
->
pDb
);
return
TSDB_CODE_SUCCESS
;
return
TSDB_CODE_SUCCESS
;
}
}
...
@@ -115,10 +110,10 @@ static int32_t mgmtVgroupActionDelete(SSdbOper *pOper) {
...
@@ -115,10 +110,10 @@ static int32_t mgmtVgroupActionDelete(SSdbOper *pOper) {
for
(
int32_t
i
=
0
;
i
<
pVgroup
->
numOfVnodes
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
pVgroup
->
numOfVnodes
;
++
i
)
{
SDnodeObj
*
pDnode
=
mgmtGetDnode
(
pVgroup
->
vnodeGid
[
i
].
dnodeId
);
SDnodeObj
*
pDnode
=
mgmtGetDnode
(
pVgroup
->
vnodeGid
[
i
].
dnodeId
);
if
(
pDnode
)
{
if
(
pDnode
!=
NULL
)
{
atomic_sub_fetch_32
(
&
pDnode
->
openVnodes
,
1
);
atomic_sub_fetch_32
(
&
pDnode
->
openVnodes
,
1
);
}
}
mgmt
ReleaseDnode
(
pDnode
);
mgmt
DecDnodeRef
(
pDnode
);
}
}
return
TSDB_CODE_SUCCESS
;
return
TSDB_CODE_SUCCESS
;
...
@@ -127,9 +122,25 @@ static int32_t mgmtVgroupActionDelete(SSdbOper *pOper) {
...
@@ -127,9 +122,25 @@ static int32_t mgmtVgroupActionDelete(SSdbOper *pOper) {
static
int32_t
mgmtVgroupActionUpdate
(
SSdbOper
*
pOper
)
{
static
int32_t
mgmtVgroupActionUpdate
(
SSdbOper
*
pOper
)
{
SVgObj
*
pNew
=
pOper
->
pObj
;
SVgObj
*
pNew
=
pOper
->
pObj
;
SVgObj
*
pVgroup
=
mgmtGetVgroup
(
pNew
->
vgId
);
SVgObj
*
pVgroup
=
mgmtGetVgroup
(
pNew
->
vgId
);
if
(
pVgroup
!=
pNew
)
{
if
(
pVgroup
!=
pNew
)
{
for
(
int32_t
i
=
0
;
i
<
pVgroup
->
numOfVnodes
;
++
i
)
{
SDnodeObj
*
pDnode
=
pVgroup
->
vnodeGid
[
i
].
pDnode
;
if
(
pDnode
!=
NULL
)
{
atomic_sub_fetch_32
(
&
pDnode
->
openVnodes
,
1
);
}
}
memcpy
(
pVgroup
,
pNew
,
pOper
->
rowSize
);
memcpy
(
pVgroup
,
pNew
,
pOper
->
rowSize
);
free
(
pNew
);
free
(
pNew
);
for
(
int32_t
i
=
0
;
i
<
pVgroup
->
numOfVnodes
;
++
i
)
{
SDnodeObj
*
pDnode
=
mgmtGetDnode
(
pVgroup
->
vnodeGid
[
i
].
dnodeId
);
pVgroup
->
vnodeGid
[
i
].
pDnode
=
pDnode
;
if
(
pDnode
!=
NULL
)
{
atomic_add_fetch_32
(
&
pDnode
->
openVnodes
,
1
);
}
}
}
}
int32_t
oldTables
=
taosIdPoolMaxSize
(
pVgroup
->
idPool
);
int32_t
oldTables
=
taosIdPoolMaxSize
(
pVgroup
->
idPool
);
...
@@ -150,6 +161,12 @@ static int32_t mgmtVgroupActionUpdate(SSdbOper *pOper) {
...
@@ -150,6 +161,12 @@ static int32_t mgmtVgroupActionUpdate(SSdbOper *pOper) {
static
int32_t
mgmtVgroupActionEncode
(
SSdbOper
*
pOper
)
{
static
int32_t
mgmtVgroupActionEncode
(
SSdbOper
*
pOper
)
{
SVgObj
*
pVgroup
=
pOper
->
pObj
;
SVgObj
*
pVgroup
=
pOper
->
pObj
;
memcpy
(
pOper
->
rowData
,
pVgroup
,
tsVgUpdateSize
);
memcpy
(
pOper
->
rowData
,
pVgroup
,
tsVgUpdateSize
);
SVgObj
*
pTmpVgroup
=
pOper
->
rowData
;
for
(
int32_t
i
=
0
;
i
<
TSDB_VNODES_SUPPORT
;
++
i
)
{
pTmpVgroup
->
vnodeGid
[
i
].
pDnode
=
NULL
;
pTmpVgroup
->
vnodeGid
[
i
].
role
=
0
;
}
pOper
->
rowSize
=
tsVgUpdateSize
;
pOper
->
rowSize
=
tsVgUpdateSize
;
return
TSDB_CODE_SUCCESS
;
return
TSDB_CODE_SUCCESS
;
}
}
...
@@ -204,7 +221,11 @@ int32_t mgmtInitVgroups() {
...
@@ -204,7 +221,11 @@ int32_t mgmtInitVgroups() {
return
0
;
return
0
;
}
}
void
mgmtReleaseVgroup
(
SVgObj
*
pVgroup
)
{
void
mgmtIncVgroupRef
(
SVgObj
*
pVgroup
)
{
return
sdbIncRef
(
tsVgroupSdb
,
pVgroup
);
}
void
mgmtDecVgroupRef
(
SVgObj
*
pVgroup
)
{
return
sdbDecRef
(
tsVgroupSdb
,
pVgroup
);
return
sdbDecRef
(
tsVgroupSdb
,
pVgroup
);
}
}
...
@@ -224,16 +245,38 @@ void mgmtUpdateVgroup(SVgObj *pVgroup) {
...
@@ -224,16 +245,38 @@ void mgmtUpdateVgroup(SVgObj *pVgroup) {
mgmtSendCreateVgroupMsg
(
pVgroup
,
NULL
);
mgmtSendCreateVgroupMsg
(
pVgroup
,
NULL
);
}
}
void
mgmtUpdateVgroupStatus
(
SVgObj
*
pVgroup
,
int32_t
dnodeId
,
SVnodeLoad
*
pVload
)
{
void
mgmtUpdateVgroupStatus
(
SVgObj
*
pVgroup
,
SDnodeObj
*
pDnode
,
SVnodeLoad
*
pVload
)
{
if
(
pVload
->
role
==
TAOS_SYNC_ROLE_MASTER
)
{
bool
dnodeExist
=
false
;
for
(
int32_t
i
=
0
;
i
<
pVgroup
->
numOfVnodes
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
pVgroup
->
numOfVnodes
;
++
i
)
{
SVnodeGid
*
pVgid
=
&
pVgroup
->
vnodeGid
[
i
];
SVnodeGid
*
pVgid
=
&
pVgroup
->
vnodeGid
[
i
];
if
(
pVgid
->
dnodeId
==
dnodeId
)
{
if
(
pVgid
->
pDnode
==
pDnode
)
{
pVgid
->
role
=
pVload
->
role
;
if
(
pVload
->
role
==
TAOS_SYNC_ROLE_MASTER
)
{
pVgroup
->
inUse
=
i
;
pVgroup
->
inUse
=
i
;
break
;
}
}
dnodeExist
=
true
;
break
;
}
}
}
}
if
(
!
dnodeExist
)
{
SRpcIpSet
ipSet
=
mgmtGetIpSetFromIp
(
pDnode
->
privateIp
);
mError
(
"vgroup:%d, dnode:%d not exist in mnode, drop it"
,
pVload
->
vgId
,
pDnode
->
dnodeId
);
mgmtSendDropVnodeMsg
(
pVload
->
vgId
,
&
ipSet
,
NULL
);
return
;
}
if
(
pVload
->
role
==
TAOS_SYNC_ROLE_MASTER
)
{
pVgroup
->
totalStorage
=
htobe64
(
pVload
->
totalStorage
);
pVgroup
->
compStorage
=
htobe64
(
pVload
->
compStorage
);
pVgroup
->
pointsWritten
=
htobe64
(
pVload
->
pointsWritten
);
}
if
(
pVload
->
replica
!=
pVgroup
->
numOfVnodes
)
{
mError
(
"dnode:%d, vgroup:%d replica:%d not match with mgmt:%d"
,
pDnode
->
dnodeId
,
pVload
->
vgId
,
pVload
->
replica
,
pVgroup
->
numOfVnodes
);
mgmtSendCreateVgroupMsg
(
pVgroup
,
NULL
);
}
}
}
SVgObj
*
mgmtGetAvailableVgroup
(
SDbObj
*
pDb
)
{
SVgObj
*
mgmtGetAvailableVgroup
(
SDbObj
*
pDb
)
{
...
@@ -340,7 +383,7 @@ int32_t mgmtGetVgroupMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *pConn) {
...
@@ -340,7 +383,7 @@ int32_t mgmtGetVgroupMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *pConn) {
mgmtDecTableRef
(
pTable
);
mgmtDecTableRef
(
pTable
);
pVgroup
=
mgmtGetVgroup
(((
SChildTableObj
*
)
pTable
)
->
vgId
);
pVgroup
=
mgmtGetVgroup
(((
SChildTableObj
*
)
pTable
)
->
vgId
);
if
(
NULL
==
pVgroup
)
return
TSDB_CODE_INVALID_TABLE_ID
;
if
(
NULL
==
pVgroup
)
return
TSDB_CODE_INVALID_TABLE_ID
;
mgmt
ReleaseVgroup
(
pVgroup
);
mgmt
DecVgroupRef
(
pVgroup
);
maxReplica
=
pVgroup
->
numOfVnodes
>
maxReplica
?
pVgroup
->
numOfVnodes
:
maxReplica
;
maxReplica
=
pVgroup
->
numOfVnodes
>
maxReplica
?
pVgroup
->
numOfVnodes
:
maxReplica
;
}
else
{
}
else
{
SVgObj
*
pVgroup
=
pDb
->
pHead
;
SVgObj
*
pVgroup
=
pDb
->
pHead
;
...
@@ -391,27 +434,6 @@ int32_t mgmtGetVgroupMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *pConn) {
...
@@ -391,27 +434,6 @@ int32_t mgmtGetVgroupMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *pConn) {
return
0
;
return
0
;
}
}
char
*
mgmtGetVnodeStatus
(
SVgObj
*
pVgroup
,
SVnodeGid
*
pVnode
)
{
SDnodeObj
*
pDnode
=
mgmtGetDnode
(
pVnode
->
dnodeId
);
if
(
pDnode
==
NULL
)
{
mError
(
"vgroup:%d, not exist in dnode:%d"
,
pVgroup
->
vgId
,
pDnode
->
dnodeId
);
return
"null"
;
}
mgmtReleaseDnode
(
pDnode
);
if
(
pDnode
->
status
==
TAOS_DN_STATUS_OFFLINE
)
{
return
"offline"
;
}
for
(
int
i
=
0
;
i
<
pDnode
->
openVnodes
;
++
i
)
{
if
(
pDnode
->
vload
[
i
].
vgId
==
pVgroup
->
vgId
)
{
return
pDnode
->
vload
[
i
].
status
?
"ready"
:
"offline"
;
}
}
return
"null"
;
}
int32_t
mgmtRetrieveVgroups
(
SShowObj
*
pShow
,
char
*
data
,
int32_t
rows
,
void
*
pConn
)
{
int32_t
mgmtRetrieveVgroups
(
SShowObj
*
pShow
,
char
*
data
,
int32_t
rows
,
void
*
pConn
)
{
int32_t
numOfRows
=
0
;
int32_t
numOfRows
=
0
;
SVgObj
*
pVgroup
=
NULL
;
SVgObj
*
pVgroup
=
NULL
;
...
@@ -453,19 +475,24 @@ int32_t mgmtRetrieveVgroups(SShowObj *pShow, char *data, int32_t rows, void *pCo
...
@@ -453,19 +475,24 @@ int32_t mgmtRetrieveVgroups(SShowObj *pShow, char *data, int32_t rows, void *pCo
*
(
int16_t
*
)
pWrite
=
pVgroup
->
vnodeGid
[
i
].
dnodeId
;
*
(
int16_t
*
)
pWrite
=
pVgroup
->
vnodeGid
[
i
].
dnodeId
;
cols
++
;
cols
++
;
tinet_ntoa
(
ipstr
,
pVgroup
->
vnodeGid
[
i
].
privateIp
);
SDnodeObj
*
pDnode
=
pVgroup
->
vnodeGid
[
i
].
pDnode
;
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
strcpy
(
pWrite
,
ipstr
);
cols
++
;
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
if
(
pDnode
!=
NULL
)
{
if
(
pVgroup
->
vnodeGid
[
i
].
dnodeId
!=
0
)
{
tinet_ntoa
(
ipstr
,
pDnode
->
privateIp
);
char
*
vnodeStatus
=
mgmtGetVnodeStatus
(
pVgroup
,
pVgroup
->
vnodeGid
+
i
);
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
strcpy
(
pWrite
,
vnodeStatus
);
strcpy
(
pWrite
,
ipstr
);
cols
++
;
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
strcpy
(
pWrite
,
mgmtGetMnodeRoleStr
(
pVgroup
->
vnodeGid
[
i
].
role
));
cols
++
;
}
else
{
}
else
{
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
strcpy
(
pWrite
,
"null"
);
strcpy
(
pWrite
,
"null"
);
cols
++
;
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
strcpy
(
pWrite
,
"null"
);
cols
++
;
}
}
cols
++
;
}
}
numOfRows
++
;
numOfRows
++
;
...
@@ -506,27 +533,38 @@ SMDCreateVnodeMsg *mgmtBuildCreateVnodeMsg(SVgObj *pVgroup) {
...
@@ -506,27 +533,38 @@ SMDCreateVnodeMsg *mgmtBuildCreateVnodeMsg(SVgObj *pVgroup) {
SMDCreateVnodeMsg
*
pVnode
=
rpcMallocCont
(
sizeof
(
SMDCreateVnodeMsg
));
SMDCreateVnodeMsg
*
pVnode
=
rpcMallocCont
(
sizeof
(
SMDCreateVnodeMsg
));
if
(
pVnode
==
NULL
)
return
NULL
;
if
(
pVnode
==
NULL
)
return
NULL
;
pVnode
->
cfg
=
pDb
->
cfg
;
SMDVnodeCfg
*
pCfg
=
&
pVnode
->
cfg
;
pCfg
->
vgId
=
htonl
(
pVgroup
->
vgId
);
SVnodeCfg
*
pCfg
=
&
pVnode
->
cfg
;
pCfg
->
maxTables
=
htonl
(
pDb
->
cfg
.
maxSessions
);
pCfg
->
vgId
=
htonl
(
pVgroup
->
vgId
);
pCfg
->
maxCacheSize
=
htobe64
((
int64_t
)
pDb
->
cfg
.
cacheBlockSize
*
pDb
->
cfg
.
cacheNumOfBlocks
.
totalBlocks
);
pCfg
->
maxSessions
=
htonl
(
pCfg
->
maxSessions
);
pCfg
->
maxCacheSize
=
htobe64
(
-
1
);
pCfg
->
cacheBlockSize
=
htonl
(
pCfg
->
cacheBlockSize
);
pCfg
->
minRowsPerFileBlock
=
htonl
(
-
1
);
pCfg
->
cacheNumOfBlocks
.
totalBlocks
=
htonl
(
pCfg
->
cacheNumOfBlocks
.
totalBlocks
);
pCfg
->
maxRowsPerFileBlock
=
htonl
(
-
1
);
pCfg
->
daysPerFile
=
htonl
(
pCfg
->
daysPerFile
);
pCfg
->
daysPerFile
=
htonl
(
pDb
->
cfg
.
daysPerFile
);
pCfg
->
daysToKeep1
=
htonl
(
pCfg
->
daysToKeep1
);
pCfg
->
daysToKeep1
=
htonl
(
pDb
->
cfg
.
daysToKeep1
);
pCfg
->
daysToKeep2
=
htonl
(
pCfg
->
daysToKeep2
);
pCfg
->
daysToKeep2
=
htonl
(
pDb
->
cfg
.
daysToKeep2
);
pCfg
->
daysToKeep
=
htonl
(
pCfg
->
daysToKeep
);
pCfg
->
daysToKeep
=
htonl
(
pDb
->
cfg
.
daysToKeep
);
pCfg
->
commitTime
=
htonl
(
pCfg
->
commitTime
);
pCfg
->
daysToKeep
=
htonl
(
-
1
);
pCfg
->
rowsInFileBlock
=
htonl
(
pCfg
->
rowsInFileBlock
);
pCfg
->
commitTime
=
htonl
(
pDb
->
cfg
.
commitTime
);
pCfg
->
blocksPerTable
=
htons
(
pCfg
->
blocksPerTable
);
pCfg
->
precision
=
pDb
->
cfg
.
precision
;
pCfg
->
replications
=
(
int8_t
)
pVgroup
->
numOfVnodes
;
pCfg
->
compression
=
pDb
->
cfg
.
compression
;
pCfg
->
compression
=
-
1
;
pCfg
->
wals
=
3
;
pCfg
->
commitLog
=
pDb
->
cfg
.
commitLog
;
pCfg
->
replications
=
(
int8_t
)
pVgroup
->
numOfVnodes
;
pCfg
->
quorum
=
1
;
S
VnodeDesc
*
vpeerDesc
=
pVnode
->
vpeerDesc
;
S
MDVnodeDesc
*
pNodes
=
pVnode
->
nodes
;
for
(
int32_t
j
=
0
;
j
<
pVgroup
->
numOfVnodes
;
++
j
)
{
for
(
int32_t
j
=
0
;
j
<
pVgroup
->
numOfVnodes
;
++
j
)
{
vpeerDesc
[
j
].
vgId
=
htonl
(
pVgroup
->
vgId
);
SDnodeObj
*
pDnode
=
pVgroup
->
vnodeGid
[
j
].
pDnode
;
vpeerDesc
[
j
].
dnodeId
=
htonl
(
pVgroup
->
vnodeGid
[
j
].
dnodeId
);
if
(
pDnode
!=
NULL
)
{
vpeerDesc
[
j
].
ip
=
htonl
(
pVgroup
->
vnodeGid
[
j
].
privateIp
);
pNodes
[
j
].
nodeId
=
htonl
(
pDnode
->
dnodeId
);
pNodes
[
j
].
nodeIp
=
htonl
(
pDnode
->
privateIp
);
strcpy
(
pNodes
[
j
].
nodeName
,
pDnode
->
dnodeName
);
if
(
j
==
0
)
{
pCfg
->
arbitratorIp
=
htonl
(
pDnode
->
privateIp
);
}
}
}
}
return
pVnode
;
return
pVnode
;
...
@@ -539,7 +577,7 @@ SRpcIpSet mgmtGetIpSetFromVgroup(SVgObj *pVgroup) {
...
@@ -539,7 +577,7 @@ SRpcIpSet mgmtGetIpSetFromVgroup(SVgObj *pVgroup) {
.
port
=
tsDnodeMnodePort
.
port
=
tsDnodeMnodePort
};
};
for
(
int
i
=
0
;
i
<
pVgroup
->
numOfVnodes
;
++
i
)
{
for
(
int
i
=
0
;
i
<
pVgroup
->
numOfVnodes
;
++
i
)
{
ipSet
.
ip
[
i
]
=
pVgroup
->
vnodeGid
[
i
].
privateIp
;
ipSet
.
ip
[
i
]
=
pVgroup
->
vnodeGid
[
i
].
p
Dnode
->
p
rivateIp
;
}
}
return
ipSet
;
return
ipSet
;
}
}
...
@@ -570,7 +608,7 @@ void mgmtSendCreateVnodeMsg(SVgObj *pVgroup, SRpcIpSet *ipSet, void *ahandle) {
...
@@ -570,7 +608,7 @@ void mgmtSendCreateVnodeMsg(SVgObj *pVgroup, SRpcIpSet *ipSet, void *ahandle) {
void
mgmtSendCreateVgroupMsg
(
SVgObj
*
pVgroup
,
void
*
ahandle
)
{
void
mgmtSendCreateVgroupMsg
(
SVgObj
*
pVgroup
,
void
*
ahandle
)
{
mTrace
(
"vgroup:%d, send create all vnodes msg, ahandle:%p"
,
pVgroup
->
vgId
,
ahandle
);
mTrace
(
"vgroup:%d, send create all vnodes msg, ahandle:%p"
,
pVgroup
->
vgId
,
ahandle
);
for
(
int32_t
i
=
0
;
i
<
pVgroup
->
numOfVnodes
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
pVgroup
->
numOfVnodes
;
++
i
)
{
SRpcIpSet
ipSet
=
mgmtGetIpSetFromIp
(
pVgroup
->
vnodeGid
[
i
].
privateIp
);
SRpcIpSet
ipSet
=
mgmtGetIpSetFromIp
(
pVgroup
->
vnodeGid
[
i
].
p
Dnode
->
p
rivateIp
);
mgmtSendCreateVnodeMsg
(
pVgroup
,
&
ipSet
,
ahandle
);
mgmtSendCreateVnodeMsg
(
pVgroup
,
&
ipSet
,
ahandle
);
}
}
}
}
...
@@ -636,7 +674,7 @@ void mgmtSendDropVnodeMsg(int32_t vgId, SRpcIpSet *ipSet, void *ahandle) {
...
@@ -636,7 +674,7 @@ void mgmtSendDropVnodeMsg(int32_t vgId, SRpcIpSet *ipSet, void *ahandle) {
static
void
mgmtSendDropVgroupMsg
(
SVgObj
*
pVgroup
,
void
*
ahandle
)
{
static
void
mgmtSendDropVgroupMsg
(
SVgObj
*
pVgroup
,
void
*
ahandle
)
{
mTrace
(
"vgroup:%d, send drop all vnodes msg, ahandle:%p"
,
pVgroup
->
vgId
,
ahandle
);
mTrace
(
"vgroup:%d, send drop all vnodes msg, ahandle:%p"
,
pVgroup
->
vgId
,
ahandle
);
for
(
int32_t
i
=
0
;
i
<
pVgroup
->
numOfVnodes
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
pVgroup
->
numOfVnodes
;
++
i
)
{
SRpcIpSet
ipSet
=
mgmtGetIpSetFromIp
(
pVgroup
->
vnodeGid
[
i
].
privateIp
);
SRpcIpSet
ipSet
=
mgmtGetIpSetFromIp
(
pVgroup
->
vnodeGid
[
i
].
p
Dnode
->
p
rivateIp
);
mgmtSendDropVnodeMsg
(
pVgroup
->
vgId
,
&
ipSet
,
ahandle
);
mgmtSendDropVnodeMsg
(
pVgroup
->
vgId
,
&
ipSet
,
ahandle
);
}
}
}
}
...
@@ -687,7 +725,7 @@ static void mgmtProcessVnodeCfgMsg(SRpcMsg *rpcMsg) {
...
@@ -687,7 +725,7 @@ static void mgmtProcessVnodeCfgMsg(SRpcMsg *rpcMsg) {
mgmtSendSimpleResp
(
rpcMsg
->
handle
,
TSDB_CODE_NOT_ACTIVE_VNODE
);
mgmtSendSimpleResp
(
rpcMsg
->
handle
,
TSDB_CODE_NOT_ACTIVE_VNODE
);
return
;
return
;
}
}
mgmt
ReleaseDnode
(
pDnode
);
mgmt
DecDnodeRef
(
pDnode
);
SVgObj
*
pVgroup
=
mgmtGetVgroup
(
pCfg
->
vgId
);
SVgObj
*
pVgroup
=
mgmtGetVgroup
(
pCfg
->
vgId
);
if
(
pVgroup
==
NULL
)
{
if
(
pVgroup
==
NULL
)
{
...
@@ -695,7 +733,7 @@ static void mgmtProcessVnodeCfgMsg(SRpcMsg *rpcMsg) {
...
@@ -695,7 +733,7 @@ static void mgmtProcessVnodeCfgMsg(SRpcMsg *rpcMsg) {
mgmtSendSimpleResp
(
rpcMsg
->
handle
,
TSDB_CODE_NOT_ACTIVE_VNODE
);
mgmtSendSimpleResp
(
rpcMsg
->
handle
,
TSDB_CODE_NOT_ACTIVE_VNODE
);
return
;
return
;
}
}
mgmt
ReleaseVgroup
(
pVgroup
);
mgmt
DecVgroupRef
(
pVgroup
);
mgmtSendSimpleResp
(
rpcMsg
->
handle
,
TSDB_CODE_SUCCESS
);
mgmtSendSimpleResp
(
rpcMsg
->
handle
,
TSDB_CODE_SUCCESS
);
...
@@ -711,7 +749,7 @@ void mgmtDropAllVgroups(SDbObj *pDropDb) {
...
@@ -711,7 +749,7 @@ void mgmtDropAllVgroups(SDbObj *pDropDb) {
SVgObj
*
pVgroup
=
NULL
;
SVgObj
*
pVgroup
=
NULL
;
while
(
1
)
{
while
(
1
)
{
mgmt
ReleaseVgroup
(
pVgroup
);
mgmt
DecVgroupRef
(
pVgroup
);
pNode
=
sdbFetchRow
(
tsVgroupSdb
,
pNode
,
(
void
**
)
&
pVgroup
);
pNode
=
sdbFetchRow
(
tsVgroupSdb
,
pNode
,
(
void
**
)
&
pVgroup
);
if
(
pVgroup
==
NULL
)
break
;
if
(
pVgroup
==
NULL
)
break
;
...
...
src/plugins/monitor/src/monitorSystem.c
浏览文件 @
787f6387
...
@@ -397,6 +397,7 @@ void monitorSaveAcctLog(char *acctId, int64_t currentPointsPerSecond, int64_t ma
...
@@ -397,6 +397,7 @@ void monitorSaveAcctLog(char *acctId, int64_t currentPointsPerSecond, int64_t ma
int64_t
totalOutbound
,
int64_t
maxOutbound
,
int64_t
totalDbs
,
int64_t
maxDbs
,
int64_t
totalOutbound
,
int64_t
maxOutbound
,
int64_t
totalDbs
,
int64_t
maxDbs
,
int64_t
totalUsers
,
int64_t
maxUsers
,
int64_t
totalStreams
,
int64_t
maxStreams
,
int64_t
totalUsers
,
int64_t
maxUsers
,
int64_t
totalStreams
,
int64_t
maxStreams
,
int64_t
totalConns
,
int64_t
maxConns
,
int8_t
accessState
)
{
int64_t
totalConns
,
int64_t
maxConns
,
int8_t
accessState
)
{
if
(
monitor
==
NULL
)
return
;
if
(
monitor
->
state
!=
MONITOR_STATE_INITIALIZED
)
return
;
if
(
monitor
->
state
!=
MONITOR_STATE_INITIALIZED
)
return
;
char
sql
[
1024
]
=
{
0
};
char
sql
[
1024
]
=
{
0
};
...
...
src/tsdb/src/tsdbMain.c
浏览文件 @
787f6387
...
@@ -11,7 +11,7 @@
...
@@ -11,7 +11,7 @@
#define IS_VALID_COMPRESSION(compression) (((compression) >= NO_COMPRESSION) && ((compression) <= TWO_STAGE_COMP))
#define IS_VALID_COMPRESSION(compression) (((compression) >= NO_COMPRESSION) && ((compression) <= TWO_STAGE_COMP))
#define TSDB_MIN_ID 0
#define TSDB_MIN_ID 0
#define TSDB_MAX_ID INT_MAX
#define TSDB_MAX_ID INT_MAX
#define TSDB_MIN_TABLES
10
#define TSDB_MIN_TABLES
4
#define TSDB_MAX_TABLES 100000
#define TSDB_MAX_TABLES 100000
#define TSDB_DEFAULT_TABLES 1000
#define TSDB_DEFAULT_TABLES 1000
#define TSDB_DEFAULT_DAYS_PER_FILE 10
#define TSDB_DEFAULT_DAYS_PER_FILE 10
...
...
src/util/inc/tutil.h
浏览文件 @
787f6387
...
@@ -170,6 +170,8 @@ char *taosIpStr(uint32_t ipInt);
...
@@ -170,6 +170,8 @@ char *taosIpStr(uint32_t ipInt);
uint32_t
ip2uint
(
const
char
*
const
ip_addr
);
uint32_t
ip2uint
(
const
char
*
const
ip_addr
);
void
taosRemoveDir
(
char
*
rootDir
);
#define TAOS_ALLOC_MODE_DEFAULT 0
#define TAOS_ALLOC_MODE_DEFAULT 0
#define TAOS_ALLOC_MODE_RANDOM_FAIL 1
#define TAOS_ALLOC_MODE_RANDOM_FAIL 1
#define TAOS_ALLOC_MODE_DETECT_LEAK 2
#define TAOS_ALLOC_MODE_DETECT_LEAK 2
...
...
src/util/src/tutil.c
浏览文件 @
787f6387
...
@@ -662,4 +662,28 @@ void tzfree(void *ptr) {
...
@@ -662,4 +662,28 @@ void tzfree(void *ptr) {
if
(
ptr
)
{
if
(
ptr
)
{
free
((
void
*
)((
char
*
)
ptr
-
sizeof
(
size_t
)));
free
((
void
*
)((
char
*
)
ptr
-
sizeof
(
size_t
)));
}
}
}
void
taosRemoveDir
(
char
*
rootDir
)
{
DIR
*
dir
=
opendir
(
rootDir
);
if
(
dir
==
NULL
)
return
;
struct
dirent
*
de
=
NULL
;
while
((
de
=
readdir
(
dir
))
!=
NULL
)
{
if
(
strcmp
(
de
->
d_name
,
"."
)
==
0
||
strcmp
(
de
->
d_name
,
".."
)
==
0
)
continue
;
char
filename
[
1024
];
snprintf
(
filename
,
1023
,
"%s/%s"
,
rootDir
,
de
->
d_name
);
if
(
de
->
d_type
&
DT_DIR
)
{
taosRemoveDir
(
filename
);
}
else
{
remove
(
filename
);
uPrint
(
"file:%s is removed"
,
filename
);
}
}
closedir
(
dir
);
rmdir
(
rootDir
);
uPrint
(
"dir:%s is removed"
,
rootDir
);
}
}
\ No newline at end of file
src/vnode/CMakeLists.txt
浏览文件 @
787f6387
...
@@ -9,6 +9,7 @@ IF ((TD_LINUX_64) OR (TD_LINUX_32 AND TD_ARM))
...
@@ -9,6 +9,7 @@ IF ((TD_LINUX_64) OR (TD_LINUX_32 AND TD_ARM))
INCLUDE_DIRECTORIES
(
${
TD_COMMUNITY_DIR
}
/src/tsdb/inc
)
INCLUDE_DIRECTORIES
(
${
TD_COMMUNITY_DIR
}
/src/tsdb/inc
)
INCLUDE_DIRECTORIES
(
${
TD_COMMUNITY_DIR
}
/src/common/inc
)
INCLUDE_DIRECTORIES
(
${
TD_COMMUNITY_DIR
}
/src/common/inc
)
INCLUDE_DIRECTORIES
(
${
TD_COMMUNITY_DIR
}
/src/dnode/inc
)
INCLUDE_DIRECTORIES
(
${
TD_COMMUNITY_DIR
}
/src/dnode/inc
)
INCLUDE_DIRECTORIES
(
${
TD_COMMUNITY_DIR
}
/deps/cJson/inc
)
INCLUDE_DIRECTORIES
(
${
TD_ENTERPRISE_DIR
}
/src/inc
)
INCLUDE_DIRECTORIES
(
${
TD_ENTERPRISE_DIR
}
/src/inc
)
INCLUDE_DIRECTORIES
(
inc
)
INCLUDE_DIRECTORIES
(
inc
)
AUX_SOURCE_DIRECTORY
(
src SRC
)
AUX_SOURCE_DIRECTORY
(
src SRC
)
...
...
src/vnode/src/vnodeMain.c
浏览文件 @
787f6387
此差异已折叠。
点击以展开。
tests/script/sh/deploy.sh
浏览文件 @
787f6387
...
@@ -105,7 +105,7 @@ echo "numOfThreadsPerCore 2.0" >> $TAOS_CFG
...
@@ -105,7 +105,7 @@ echo "numOfThreadsPerCore 2.0" >> $TAOS_CFG
echo
"defaultPass taosdata"
>>
$TAOS_CFG
echo
"defaultPass taosdata"
>>
$TAOS_CFG
echo
"numOfLogLines 100000000"
>>
$TAOS_CFG
echo
"numOfLogLines 100000000"
>>
$TAOS_CFG
echo
"mgmtEqualVnodeNum 0"
>>
$TAOS_CFG
echo
"mgmtEqualVnodeNum 0"
>>
$TAOS_CFG
echo
"clog
0
"
>>
$TAOS_CFG
echo
"clog
2
"
>>
$TAOS_CFG
echo
"statusInterval 1"
>>
$TAOS_CFG
echo
"statusInterval 1"
>>
$TAOS_CFG
echo
"numOfTotalVnodes 4"
>>
$TAOS_CFG
echo
"numOfTotalVnodes 4"
>>
$TAOS_CFG
echo
"asyncLog 0"
>>
$TAOS_CFG
echo
"asyncLog 0"
>>
$TAOS_CFG
...
...
tests/script/test.sh
浏览文件 @
787f6387
...
@@ -34,6 +34,8 @@ cd .
...
@@ -34,6 +34,8 @@ cd .
sh/ip.sh
-i
1
-s
up
>
/dev/null 2>&1 &
sh/ip.sh
-i
1
-s
up
>
/dev/null 2>&1 &
sh/ip.sh
-i
2
-s
up
>
/dev/null 2>&1 &
sh/ip.sh
-i
2
-s
up
>
/dev/null 2>&1 &
sh/ip.sh
-i
3
-s
up
>
/dev/null 2>&1 &
sh/ip.sh
-i
3
-s
up
>
/dev/null 2>&1 &
sh/ip.sh
-i
4
-s
up
>
/dev/null 2>&1 &
sh/ip.sh
-i
5
-s
up
>
/dev/null 2>&1 &
# Get responsible directories
# Get responsible directories
CODE_DIR
=
`
dirname
$0
`
CODE_DIR
=
`
dirname
$0
`
...
...
tests/script/unique/dnode/balance1.sim
浏览文件 @
787f6387
...
@@ -25,18 +25,18 @@ system sh/cfg.sh -n dnode2 -c mgmtEqualVnodeNum -v 4
...
@@ -25,18 +25,18 @@ system sh/cfg.sh -n dnode2 -c mgmtEqualVnodeNum -v 4
system sh/cfg.sh -n dnode3 -c mgmtEqualVnodeNum -v 4
system sh/cfg.sh -n dnode3 -c mgmtEqualVnodeNum -v 4
system sh/cfg.sh -n dnode4 -c mgmtEqualVnodeNum -v 4
system sh/cfg.sh -n dnode4 -c mgmtEqualVnodeNum -v 4
system sh/cfg.sh -n dnode1 -c clog -v
1
system sh/cfg.sh -n dnode1 -c clog -v
2
system sh/cfg.sh -n dnode2 -c clog -v
1
system sh/cfg.sh -n dnode2 -c clog -v
2
system sh/cfg.sh -n dnode3 -c clog -v
1
system sh/cfg.sh -n dnode3 -c clog -v
2
system sh/cfg.sh -n dnode4 -c clog -v
1
system sh/cfg.sh -n dnode4 -c clog -v
2
system sh/cfg.sh -n dnode1 -c clog -v
1
system sh/cfg.sh -n dnode1 -c clog -v
2
system sh/cfg.sh -n dnode2 -c clog -v
1
system sh/cfg.sh -n dnode2 -c clog -v
2
system sh/cfg.sh -n dnode3 -c clog -v
1
system sh/cfg.sh -n dnode3 -c clog -v
2
system sh/cfg.sh -n dnode4 -c clog -v
1
system sh/cfg.sh -n dnode4 -c clog -v
2
print ========== step1
print ========== step1
system sh/exec.sh -n dnode1 -s start
system sh/exec
_up
.sh -n dnode1 -s start
sql connect
sql connect
sleep 3000
sleep 3000
...
@@ -49,15 +49,15 @@ sql insert into d1.t1 values(now+4s, 12)
...
@@ -49,15 +49,15 @@ sql insert into d1.t1 values(now+4s, 12)
sql insert into d1.t1 values(now+5s, 11)
sql insert into d1.t1 values(now+5s, 11)
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
if $data3_1
92.168.0.1 != 3
then
if $data3_1
!= 1
then
return -1
return -1
endi
endi
print ========== step2
print ========== step2
sleep 2000
sleep 2000
sql create dnode 192.168.0.2
sql create dnode 192.168.0.2
system sh/exec.sh -n dnode2 -s start
system sh/exec
_up
.sh -n dnode2 -s start
$x = 0
$x = 0
show2:
show2:
...
@@ -68,12 +68,12 @@ show2:
...
@@ -68,12 +68,12 @@ show2:
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
if $data3_1
92.168.0.1 != 4
then
if $data3_1
!= 0
then
goto show2
goto show2
endi
endi
if $data3_
192.168.0.2 != 3
then
if $data3_
2 != 1
then
goto show2
goto show2
endi
endi
...
@@ -87,12 +87,12 @@ sql insert into d2.t2 values(now+4s, 22)
...
@@ -87,12 +87,12 @@ sql insert into d2.t2 values(now+4s, 22)
sql insert into d2.t2 values(now+5s, 21)
sql insert into d2.t2 values(now+5s, 21)
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
if $data3_1
92.168.0.1 != 4
then
if $data3_1
!= 0
then
return -1
return -1
endi
endi
if $data3_
192.168.0.
2 != 2 then
if $data3_2 != 2 then
return -1
return -1
endi
endi
...
@@ -108,23 +108,23 @@ show4:
...
@@ -108,23 +108,23 @@ show4:
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
if $data3_1
92.168.0.1
!= 2 then
if $data3_1 != 2 then
goto show4
goto show4
endi
endi
if $data3_
192.168.0.
2 != null then
if $data3_2 != null then
goto show4
goto show4
endi
endi
if $rows != 1 then
if $rows != 1 then
goto show4
goto show4
endi
endi
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec
_up
.sh -n dnode2 -s stop -x SIGINT
print ========== step5
print ========== step5
sql create dnode 192.168.0.3
sql create dnode 192.168.0.3
system sh/exec.sh -n dnode3 -s start
system sh/exec
_up
.sh -n dnode3 -s start
$x = 0
$x = 0
show5:
show5:
...
@@ -135,16 +135,16 @@ show5:
...
@@ -135,16 +135,16 @@ show5:
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
if $data3_1
92.168.0.1 != 4
then
if $data3_1
!= 0
then
goto show5
goto show5
endi
endi
if $data3_
192.168.0.
2 != null then
if $data3_2 != null then
goto show5
goto show5
endi
endi
if $data3_
192.168.0.
3 != 2 then
if $data3_3 != 2 then
goto show5
goto show5
endi
endi
...
@@ -158,23 +158,23 @@ sql insert into d3.t3 values(now+4s, 32)
...
@@ -158,23 +158,23 @@ sql insert into d3.t3 values(now+4s, 32)
sql insert into d3.t3 values(now+5s, 31)
sql insert into d3.t3 values(now+5s, 31)
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
if $data3_1
92.168.0.1 != 4
then
if $data3_1
!= 0
then
return -1
return -1
endi
endi
if $data3_
192.168.0.
2 != null then
if $data3_2 != null then
return -1
return -1
endi
endi
if $data3_
192.168.0.3 != 1
then
if $data3_
3 != 3
then
return -1
return -1
endi
endi
print ========== step7
print ========== step7
sql create dnode 192.168.0.4
sql create dnode 192.168.0.4
system sh/exec.sh -n dnode4 -s start
system sh/exec
_up
.sh -n dnode4 -s start
$x = 0
$x = 0
show7:
show7:
...
@@ -185,20 +185,20 @@ show7:
...
@@ -185,20 +185,20 @@ show7:
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
print 192.168.0.4
freeVnodes $data3_192.168.0.
4
print 192.168.0.4
openVnodes $data3_
4
if $data3_1
92.168.0.1 != 4
then
if $data3_1
!= 0
then
goto show7
goto show7
endi
endi
if $data3_
192.168.0.
2 != null then
if $data3_2 != null then
goto show7
goto show7
endi
endi
if $data3_
192.168.0.
3 != 2 then
if $data3_3 != 2 then
goto show7
goto show7
endi
endi
if $data3_
192.168.0.4 != 3
then
if $data3_
4 != 1
then
goto show7
goto show7
endi
endi
...
@@ -212,21 +212,21 @@ sql insert into d4.t4 values(now+4s, 42)
...
@@ -212,21 +212,21 @@ sql insert into d4.t4 values(now+4s, 42)
sql insert into d4.t4 values(now+5s, 41)
sql insert into d4.t4 values(now+5s, 41)
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
print 192.168.0.4
freeVnodes $data3_192.168.0.
4
print 192.168.0.4
openVnodes $data3_
4
if $data3_1
92.168.0.1 != 4
then
if $data3_1
!= 0
then
return -1
return -1
endi
endi
if $data3_
192.168.0.
2 != null then
if $data3_2 != null then
return -1
return -1
endi
endi
if $data3_
192.168.0.
3 != 2 then
if $data3_3 != 2 then
return -1
return -1
endi
endi
if $data3_
192.168.0.
4 != 2 then
if $data3_4 != 2 then
return -1
return -1
endi
endi
...
@@ -242,25 +242,25 @@ show9:
...
@@ -242,25 +242,25 @@ show9:
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
print 192.168.0.4
freeVnodes $data3_192.168.0.
4
print 192.168.0.4
openVnodes $data3_
4
if $data3_1
92.168.0.1 != 4
then
if $data3_1
!= 0
then
goto show9
goto show9
endi
endi
if $data3_
192.168.0.
2 != null then
if $data3_2 != null then
goto show9
goto show9
endi
endi
if $data3_
192.168.0.
3 != null then
if $data3_3 != null then
goto show9
goto show9
endi
endi
if $data3_
192.168.0.4 != 0
then
if $data3_
4 != 4
then
goto show9
goto show9
endi
endi
system sh/exec.sh -n dnode3 -s stop -x SIGINT
system sh/exec
_up
.sh -n dnode3 -s stop -x SIGINT
print ========== step10
print ========== step10
sql select * from d1.t1 order by t desc
sql select * from d1.t1 order by t desc
...
...
tests/script/unique/dnode/balance2.sim
浏览文件 @
787f6387
...
@@ -37,13 +37,13 @@ system sh/cfg.sh -n dnode4 -c clog -v 1
...
@@ -37,13 +37,13 @@ system sh/cfg.sh -n dnode4 -c clog -v 1
system sh/cfg.sh -n dnode5 -c clog -v 1
system sh/cfg.sh -n dnode5 -c clog -v 1
print ========== step1
print ========== step1
system sh/exec.sh -n dnode1 -s start
system sh/exec
_up
.sh -n dnode1 -s start
sql connect
sql connect
sql create dnode 192.168.0.2
sql create dnode 192.168.0.2
sql create dnode 192.168.0.3
sql create dnode 192.168.0.3
system sh/exec.sh -n dnode2 -s start
system sh/exec
_up
.sh -n dnode2 -s start
system sh/exec.sh -n dnode3 -s start
system sh/exec
_up
.sh -n dnode3 -s start
sleep 3000
sleep 3000
sql create database d1 replica 2 tables 4
sql create database d1 replica 2 tables 4
...
@@ -63,16 +63,16 @@ sql insert into d2.t2 values(now+4s, 22)
...
@@ -63,16 +63,16 @@ sql insert into d2.t2 values(now+4s, 22)
sql insert into d2.t2 values(now+5s, 21)
sql insert into d2.t2 values(now+5s, 21)
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
if $data3_1
92.168.0.1
!= 4 then
if $data3_1 != 4 then
return -1
return -1
endi
endi
if $data3_
192.168.0.
2 != 2 then
if $data3_2 != 2 then
return -1
return -1
endi
endi
if $data3_
192.168.0.
3 != 2 then
if $data3_3 != 2 then
return -1
return -1
endi
endi
...
@@ -88,24 +88,24 @@ show2:
...
@@ -88,24 +88,24 @@ show2:
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
if $data3_1
92.168.0.1
!= 2 then
if $data3_1 != 2 then
goto show2
goto show2
endi
endi
if $data3_
192.168.0.
2 != null then
if $data3_2 != null then
goto show2
goto show2
endi
endi
if $data3_
192.168.0.
3 != 2 then
if $data3_3 != 2 then
goto show2
goto show2
endi
endi
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec
_up
.sh -n dnode2 -s stop -x SIGINT
print ========== step3
print ========== step3
sql create dnode 192.168.0.4
sql create dnode 192.168.0.4
system sh/exec.sh -n dnode4 -s start
system sh/exec
_up
.sh -n dnode4 -s start
$x = 0
$x = 0
show3:
show3:
...
@@ -116,20 +116,20 @@ show3:
...
@@ -116,20 +116,20 @@ show3:
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
print 192.168.0.4
freeVnodes $data3_192.168.0.
4
print 192.168.0.4
openVnodes $data3_
4
if $data3_1
92.168.0.1
!= 4 then
if $data3_1 != 4 then
goto show3
goto show3
endi
endi
if $data3_
192.168.0.
2 != null then
if $data3_2 != null then
goto show3
goto show3
endi
endi
if $data3_
192.168.0.
3 != 2 then
if $data3_3 != 2 then
goto show3
goto show3
endi
endi
if $data3_
192.168.0.
4 != 2 then
if $data3_4 != 2 then
goto show3
goto show3
endi
endi
...
@@ -143,26 +143,26 @@ sql insert into d3.t3 values(now+4s, 32)
...
@@ -143,26 +143,26 @@ sql insert into d3.t3 values(now+4s, 32)
sql insert into d3.t3 values(now+5s, 31)
sql insert into d3.t3 values(now+5s, 31)
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
print 192.168.0.4
freeVnodes $data3_192.168.0.
4
print 192.168.0.4
openVnodes $data3_
4
if $data3_1
92.168.0.1
!= 4 then
if $data3_1 != 4 then
return -1
return -1
endi
endi
if $data3_
192.168.0.
2 != null then
if $data3_2 != null then
return -1
return -1
endi
endi
if $data3_
192.168.0.
3 != 1 then
if $data3_3 != 1 then
return -1
return -1
endi
endi
if $data3_
192.168.0.
4 != 1 then
if $data3_4 != 1 then
return -1
return -1
endi
endi
print ========== step5
print ========== step5
sql create dnode 192.168.0.5
sql create dnode 192.168.0.5
system sh/exec.sh -n dnode5 -s start
system sh/exec
_up
.sh -n dnode5 -s start
$x = 0
$x = 0
show5:
show5:
...
@@ -173,24 +173,24 @@ show5:
...
@@ -173,24 +173,24 @@ show5:
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
print 192.168.0.4
freeVnodes $data3_192.168.0.
4
print 192.168.0.4
openVnodes $data3_
4
print 192.168.0.5
freeVnodes $data3_192.168.0.
5
print 192.168.0.5
openVnodes $data3_
5
if $data3_1
92.168.0.1
!= 4 then
if $data3_1 != 4 then
goto show5
goto show5
endi
endi
if $data3_
192.168.0.
2 != null then
if $data3_2 != null then
goto show5
goto show5
endi
endi
if $data3_
192.168.0.
3 != 2 then
if $data3_3 != 2 then
goto show5
goto show5
endi
endi
if $data3_
192.168.0.
4 != 2 then
if $data3_4 != 2 then
goto show5
goto show5
endi
endi
if $data3_
192.168.0.
5 != 2 then
if $data3_5 != 2 then
goto show5
goto show5
endi
endi
...
@@ -206,28 +206,28 @@ show6:
...
@@ -206,28 +206,28 @@ show6:
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
print 192.168.0.4
freeVnodes $data3_192.168.0.
4
print 192.168.0.4
openVnodes $data3_
4
print 192.168.0.5
freeVnodes $data3_192.168.0.
5
print 192.168.0.5
openVnodes $data3_
5
if $data3_1
92.168.0.1
!= 4 then
if $data3_1 != 4 then
goto show6
goto show6
endi
endi
if $data3_
192.168.0.
2 != null then
if $data3_2 != null then
goto show6
goto show6
endi
endi
if $data3_
192.168.0.
3 != null then
if $data3_3 != null then
goto show6
goto show6
endi
endi
if $data3_
192.168.0.
4 != 1 then
if $data3_4 != 1 then
goto show6
goto show6
endi
endi
if $data3_
192.168.0.
5 != 1 then
if $data3_5 != 1 then
goto show6
goto show6
endi
endi
system sh/exec.sh -n dnode3 -s stop -x SIGINT
system sh/exec
_up
.sh -n dnode3 -s stop -x SIGINT
print ========== step7
print ========== step7
sql select * from d1.t1 order by t desc
sql select * from d1.t1 order by t desc
...
...
tests/script/unique/dnode/balance3.sim
浏览文件 @
787f6387
...
@@ -43,15 +43,15 @@ system sh/cfg.sh -n dnode5 -c clog -v 1
...
@@ -43,15 +43,15 @@ system sh/cfg.sh -n dnode5 -c clog -v 1
system sh/cfg.sh -n dnode6 -c clog -v 1
system sh/cfg.sh -n dnode6 -c clog -v 1
print ========== step1
print ========== step1
system sh/exec.sh -n dnode1 -s start
system sh/exec
_up
.sh -n dnode1 -s start
sql connect
sql connect
sql create dnode 192.168.0.2
sql create dnode 192.168.0.2
sql create dnode 192.168.0.3
sql create dnode 192.168.0.3
sql create dnode 192.168.0.4
sql create dnode 192.168.0.4
system sh/exec.sh -n dnode2 -s start
system sh/exec
_up
.sh -n dnode2 -s start
system sh/exec.sh -n dnode3 -s start
system sh/exec
_up
.sh -n dnode3 -s start
system sh/exec.sh -n dnode4 -s start
system sh/exec
_up
.sh -n dnode4 -s start
sleep 3000
sleep 3000
sql create database d1 replica 3 tables 4
sql create database d1 replica 3 tables 4
...
@@ -71,21 +71,21 @@ sql insert into d2.t2 values(now+4s, 22)
...
@@ -71,21 +71,21 @@ sql insert into d2.t2 values(now+4s, 22)
sql insert into d2.t2 values(now+5s, 21)
sql insert into d2.t2 values(now+5s, 21)
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
print 192.168.0.4
freeVnodes $data3_192.168.0.
4
print 192.168.0.4
openVnodes $data3_
4
if $data3_1
92.168.0.1
!= 4 then
if $data3_1 != 4 then
return -1
return -1
endi
endi
if $data3_
192.168.0.
2 != 2 then
if $data3_2 != 2 then
return -1
return -1
endi
endi
if $data3_
192.168.0.
3 != 2 then
if $data3_3 != 2 then
return -1
return -1
endi
endi
if $data3_
192.168.0.
4 != 2 then
if $data3_4 != 2 then
return -1
return -1
endi
endi
...
@@ -101,29 +101,29 @@ show2:
...
@@ -101,29 +101,29 @@ show2:
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
print 192.168.0.4
freeVnodes $data3_192.168.0.
4
print 192.168.0.4
openVnodes $data3_
4
if $data3_1
92.168.0.1
!= 2 then
if $data3_1 != 2 then
goto show2
goto show2
endi
endi
if $data3_
192.168.0.
2 != null then
if $data3_2 != null then
goto show2
goto show2
endi
endi
if $data3_
192.168.0.
3 != 2 then
if $data3_3 != 2 then
goto show2
goto show2
endi
endi
if $data3_
192.168.0.
4 != 2 then
if $data3_4 != 2 then
goto show2
goto show2
endi
endi
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec
_up
.sh -n dnode2 -s stop -x SIGINT
print ========== step
print ========== step
sql create dnode 192.168.0.5
sql create dnode 192.168.0.5
system sh/exec.sh -n dnode5 -s start
system sh/exec
_up
.sh -n dnode5 -s start
$x = 0
$x = 0
show3:
show3:
...
@@ -134,25 +134,25 @@ show3:
...
@@ -134,25 +134,25 @@ show3:
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
print 192.168.0.4
freeVnodes $data3_192.168.0.
4
print 192.168.0.4
openVnodes $data3_
4
print 192.168.0.5
freeVnodes $data3_192.168.0.
5
print 192.168.0.5
openVnodes $data3_
5
if $data3_1
92.168.0.1
!= 4 then
if $data3_1 != 4 then
goto show3
goto show3
endi
endi
if $data3_
192.168.0.
2 != null then
if $data3_2 != null then
goto show3
goto show3
endi
endi
if $data3_
192.168.0.
3 != 2 then
if $data3_3 != 2 then
goto show3
goto show3
endi
endi
if $data3_
192.168.0.
4 != 2 then
if $data3_4 != 2 then
goto show3
goto show3
endi
endi
if $data3_
192.168.0.
5 != 2 then
if $data3_5 != 2 then
goto show3
goto show3
endi
endi
...
@@ -174,31 +174,31 @@ show4:
...
@@ -174,31 +174,31 @@ show4:
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
print 192.168.0.4
freeVnodes $data3_192.168.0.
4
print 192.168.0.4
openVnodes $data3_
4
print 192.168.0.5
freeVnodes $data3_192.168.0.
5
print 192.168.0.5
openVnodes $data3_
5
if $data3_1
92.168.0.1
!= 4 then
if $data3_1 != 4 then
goto show4
goto show4
endi
endi
if $data3_
192.168.0.
2 != null then
if $data3_2 != null then
goto show4
goto show4
endi
endi
if $data3_
192.168.0.
3 != 1 then
if $data3_3 != 1 then
goto show4
goto show4
endi
endi
if $data3_
192.168.0.
4 != 1 then
if $data3_4 != 1 then
goto show4
goto show4
endi
endi
if $data3_
192.168.0.
5 != 1 then
if $data3_5 != 1 then
goto show4
goto show4
endi
endi
print ========== step5
print ========== step5
sql create dnode 192.168.0.2
sql create dnode 192.168.0.2
system sh/exec.sh -n dnode2 -s start
system sh/exec
_up
.sh -n dnode2 -s start
$x = 0
$x = 0
show5:
show5:
...
@@ -209,16 +209,16 @@ show5:
...
@@ -209,16 +209,16 @@ show5:
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
print 192.168.0.4
freeVnodes $data3_192.168.0.
4
print 192.168.0.4
openVnodes $data3_
4
print 192.168.0.5
freeVnodes $data3_192.168.0.
5
print 192.168.0.5
openVnodes $data3_
5
if $data3_1
92.168.0.1
!= 4 then
if $data3_1 != 4 then
goto show5
goto show5
endi
endi
if $data3_
192.168.0.
2 != 2 then
if $data3_2 != 2 then
goto show5
goto show5
endi
endi
...
@@ -236,29 +236,29 @@ show6:
...
@@ -236,29 +236,29 @@ show6:
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
print 192.168.0.4
freeVnodes $data3_192.168.0.
4
print 192.168.0.4
openVnodes $data3_
4
print 192.168.0.5
freeVnodes $data3_192.168.0.
5
print 192.168.0.5
openVnodes $data3_
5
if $data3_1
92.168.0.1
!= 4 then
if $data3_1 != 4 then
goto show6
goto show6
endi
endi
if $data3_
192.168.0.
2 != 1 then
if $data3_2 != 1 then
goto show6
goto show6
endi
endi
if $data3_
192.168.0.
3 != null then
if $data3_3 != null then
goto show6
goto show6
endi
endi
if $data3_
192.168.0.
4 != 1 then
if $data3_4 != 1 then
goto show6
goto show6
endi
endi
if $data3_
192.168.0.
5 != 1 then
if $data3_5 != 1 then
goto show6
goto show6
endi
endi
system sh/exec.sh -n dnode3 -s stop -x SIGINT
system sh/exec
_up
.sh -n dnode3 -s stop -x SIGINT
print ========== step7
print ========== step7
sql select * from d1.t1 order by t desc
sql select * from d1.t1 order by t desc
...
...
tests/script/unique/dnode/balancex.sim
浏览文件 @
787f6387
...
@@ -31,7 +31,7 @@ system sh/cfg.sh -n dnode3 -c clog -v 1
...
@@ -31,7 +31,7 @@ system sh/cfg.sh -n dnode3 -c clog -v 1
system sh/cfg.sh -n dnode4 -c clog -v 1
system sh/cfg.sh -n dnode4 -c clog -v 1
print ========== step1
print ========== step1
system sh/exec.sh -n dnode1 -s start
system sh/exec
_up
.sh -n dnode1 -s start
sql connect
sql connect
sleep 3000
sleep 3000
...
@@ -52,14 +52,14 @@ sql insert into d2.t2 values(now+4s, 22)
...
@@ -52,14 +52,14 @@ sql insert into d2.t2 values(now+4s, 22)
sql insert into d2.t2 values(now+5s, 21)
sql insert into d2.t2 values(now+5s, 21)
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
if $data3_1
92.168.0.1
!= 2 then
if $data3_1 != 2 then
return -1
return -1
endi
endi
print ========== step2
print ========== step2
sql create dnode 192.168.0.2
sql create dnode 192.168.0.2
system sh/exec.sh -n dnode2 -s start
system sh/exec
_up
.sh -n dnode2 -s start
$x = 0
$x = 0
show2:
show2:
...
@@ -70,12 +70,12 @@ show2:
...
@@ -70,12 +70,12 @@ show2:
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
if $data3_1
92.168.0.1
!= 4 then
if $data3_1 != 4 then
goto show2
goto show2
endi
endi
if $data3_
192.168.0.
2 != 2 then
if $data3_2 != 2 then
goto show2
goto show2
endi
endi
...
@@ -96,18 +96,18 @@ show3:
...
@@ -96,18 +96,18 @@ show3:
return -1
return -1
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
if $data3_1
92.168.0.1
!= 3 then
if $data3_1 != 3 then
goto show3
goto show3
endi
endi
if $data3_
192.168.0.
2 != 1 then
if $data3_2 != 1 then
goto show3
goto show3
endi
endi
print ========== step3
print ========== step3
sql create dnode 192.168.0.3
sql create dnode 192.168.0.3
system sh/exec.sh -n dnode3 -s start
system sh/exec
_up
.sh -n dnode3 -s start
$x = 0
$x = 0
show4:
show4:
...
@@ -117,16 +117,16 @@ show4:
...
@@ -117,16 +117,16 @@ show4:
return -1
return -1
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
if $data3_1
92.168.0.1
!= 4 then
if $data3_1 != 4 then
goto show4
goto show4
endi
endi
if $data3_
192.168.0.
2 != 2 then
if $data3_2 != 2 then
goto show4
goto show4
endi
endi
if $data3_
192.168.0.
3 != 2 then
if $data3_3 != 2 then
goto show4
goto show4
endi
endi
...
@@ -141,20 +141,20 @@ show5:
...
@@ -141,20 +141,20 @@ show5:
return -1
return -1
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
if $data3_1
92.168.0.1
!= 3 then
if $data3_1 != 3 then
goto show5
goto show5
endi
endi
if $data3_
192.168.0.
2 != null then
if $data3_2 != null then
goto show5
goto show5
endi
endi
if $data3_
192.168.0.
3 != 1 then
if $data3_3 != 1 then
goto show5
goto show5
endi
endi
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec
_up
.sh -n dnode2 -s stop -x SIGINT
print ========== step6
print ========== step6
sql select * from d1.t1 order by t desc
sql select * from d1.t1 order by t desc
...
...
tests/script/unique/dnode
s
/basic1.sim
→
tests/script/unique/dnode/basic1.sim
浏览文件 @
787f6387
文件已移动
tests/script/unique/dnode/monitor_bug.sim
浏览文件 @
787f6387
...
@@ -22,19 +22,19 @@ system sh/cfg.sh -n dnode1 -c monitor -v 1
...
@@ -22,19 +22,19 @@ system sh/cfg.sh -n dnode1 -c monitor -v 1
system sh/cfg.sh -n dnode2 -c monitor -v 0
system sh/cfg.sh -n dnode2 -c monitor -v 0
print ========== step1
print ========== step1
system sh/exec.sh -n dnode1 -s start
system sh/exec
_up
.sh -n dnode1 -s start
sql connect
sql connect
sleep 5000
sleep 5000
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
if $data3_1
92.168.0.1
!= 3 then
if $data3_1 != 3 then
return -1
return -1
endi
endi
print ========== step2
print ========== step2
sql create dnode 192.168.0.2
sql create dnode 192.168.0.2
system sh/exec.sh -n dnode2 -s start
system sh/exec
_up
.sh -n dnode2 -s start
$x = 0
$x = 0
show2:
show2:
...
@@ -45,12 +45,12 @@ show2:
...
@@ -45,12 +45,12 @@ show2:
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
if $data3_1
92.168.0.1
!= 4 then
if $data3_1 != 4 then
goto show2
goto show2
endi
endi
if $data3_
192.168.0.
2 != 3 then
if $data3_2 != 3 then
goto show2
goto show2
endi
endi
...
...
tests/script/unique/dnode/offline1.sim
浏览文件 @
787f6387
...
@@ -29,10 +29,10 @@ system sh/cfg.sh -n dnode2 -c clog -v 1
...
@@ -29,10 +29,10 @@ system sh/cfg.sh -n dnode2 -c clog -v 1
system sh/cfg.sh -n dnode3 -c clog -v 1
system sh/cfg.sh -n dnode3 -c clog -v 1
print ========== step1
print ========== step1
system sh/exec.sh -n dnode1 -s start
system sh/exec
_up
.sh -n dnode1 -s start
sql connect
sql connect
sql create dnode 192.168.0.2
sql create dnode 192.168.0.2
system sh/exec.sh -n dnode2 -s start
system sh/exec
_up
.sh -n dnode2 -s start
sleep 3000
sleep 3000
sql show dnodes
sql show dnodes
...
@@ -44,7 +44,7 @@ if $data4_192.168.0.2 != ready then
...
@@ -44,7 +44,7 @@ if $data4_192.168.0.2 != ready then
endi
endi
print ========== step2
print ========== step2
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec
_up
.sh -n dnode2 -s stop -x SIGINT
sleep 6000
sleep 6000
sql show dnodes
sql show dnodes
...
...
tests/script/unique/dnode/offline2.sim
浏览文件 @
787f6387
...
@@ -29,10 +29,10 @@ system sh/cfg.sh -n dnode2 -c clog -v 1
...
@@ -29,10 +29,10 @@ system sh/cfg.sh -n dnode2 -c clog -v 1
system sh/cfg.sh -n dnode3 -c clog -v 1
system sh/cfg.sh -n dnode3 -c clog -v 1
print ========== step1
print ========== step1
system sh/exec.sh -n dnode1 -s start
system sh/exec
_up
.sh -n dnode1 -s start
sql connect
sql connect
sql create dnode 192.168.0.2
sql create dnode 192.168.0.2
system sh/exec.sh -n dnode2 -s start
system sh/exec
_up
.sh -n dnode2 -s start
sleep 3000
sleep 3000
sql create database d1 replica 2 tables 4
sql create database d1 replica 2 tables 4
...
@@ -48,7 +48,7 @@ if $data4_192.168.0.2 != ready then
...
@@ -48,7 +48,7 @@ if $data4_192.168.0.2 != ready then
endi
endi
print ========== step2
print ========== step2
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec
_up
.sh -n dnode2 -s stop -x SIGINT
sleep 5000
sleep 5000
sql show dnodes
sql show dnodes
...
@@ -72,7 +72,7 @@ endi
...
@@ -72,7 +72,7 @@ endi
print ========== step4
print ========== step4
sql create dnode 192.168.0.3
sql create dnode 192.168.0.3
system sh/exec.sh -n dnode3 -s start
system sh/exec
_up
.sh -n dnode3 -s start
sql drop dnode 192.168.0.2
sql drop dnode 192.168.0.2
sleep 5000
sleep 5000
...
...
tests/script/unique/dnode/remove1.sim
浏览文件 @
787f6387
...
@@ -31,7 +31,7 @@ system sh/cfg.sh -n dnode3 -c clog -v 1
...
@@ -31,7 +31,7 @@ system sh/cfg.sh -n dnode3 -c clog -v 1
system sh/cfg.sh -n dnode4 -c clog -v 1
system sh/cfg.sh -n dnode4 -c clog -v 1
print ========== step1
print ========== step1
system sh/exec.sh -n dnode1 -s start
system sh/exec
_up
.sh -n dnode1 -s start
sql connect
sql connect
sleep 3000
sleep 3000
...
@@ -52,14 +52,14 @@ sql insert into d2.t2 values(now+4s, 22)
...
@@ -52,14 +52,14 @@ sql insert into d2.t2 values(now+4s, 22)
sql insert into d2.t2 values(now+5s, 21)
sql insert into d2.t2 values(now+5s, 21)
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
if $data3_1
92.168.0.1
!= 2 then
if $data3_1 != 2 then
return -1
return -1
endi
endi
print ========== step2
print ========== step2
sql create dnode 192.168.0.2
sql create dnode 192.168.0.2
system sh/exec.sh -n dnode2 -s start
system sh/exec
_up
.sh -n dnode2 -s start
sleep 9000
sleep 9000
sql create database d3 replica 2 tables 4
sql create database d3 replica 2 tables 4
...
@@ -79,12 +79,12 @@ show2:
...
@@ -79,12 +79,12 @@ show2:
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
if $data3_1
92.168.0.1
!= 3 then
if $data3_1 != 3 then
goto show2
goto show2
endi
endi
if $data3_
192.168.0.
2 != 1 then
if $data3_2 != 1 then
goto show2
goto show2
endi
endi
...
@@ -101,12 +101,12 @@ show3:
...
@@ -101,12 +101,12 @@ show3:
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2 $data5_192.168.0.2
print 192.168.0.2
openVnodes $data3_
2 $data5_192.168.0.2
print ========== step4
print ========== step4
sql create dnode 192.168.0.3
sql create dnode 192.168.0.3
system sh/exec.sh -n dnode3 -s start
system sh/exec
_up
.sh -n dnode3 -s start
$x = 0
$x = 0
show4:
show4:
...
@@ -117,18 +117,18 @@ show4:
...
@@ -117,18 +117,18 @@ show4:
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
if $data3_
192.168.0.
2 != null then
if $data3_2 != null then
goto show4
goto show4
endi
endi
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec
_up
.sh -n dnode2 -s stop -x SIGINT
print ========== step5
print ========== step5
sql create dnode 192.168.0.4
sql create dnode 192.168.0.4
system sh/exec.sh -n dnode4 -s start
system sh/exec
_up
.sh -n dnode4 -s start
$x = 0
$x = 0
show5:
show5:
...
@@ -138,20 +138,20 @@ show5:
...
@@ -138,20 +138,20 @@ show5:
return -1
return -1
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
print 192.168.0.4
freeVnodes $data3_192.168.0.
4
print 192.168.0.4
openVnodes $data3_
4
if $data3_1
92.168.0.1
!= 4 then
if $data3_1 != 4 then
goto show5
goto show5
endi
endi
if $data3_
192.168.0.
2 != null then
if $data3_2 != null then
goto show5
goto show5
endi
endi
if $data3_
192.168.0.
3 != 2 then
if $data3_3 != 2 then
goto show5
goto show5
endi
endi
if $data3_
192.168.0.
4 != 2 then
if $data3_4 != 2 then
goto show5
goto show5
endi
endi
...
...
tests/script/unique/dnode/remove2.sim
浏览文件 @
787f6387
...
@@ -31,7 +31,7 @@ system sh/cfg.sh -n dnode3 -c clog -v 1
...
@@ -31,7 +31,7 @@ system sh/cfg.sh -n dnode3 -c clog -v 1
system sh/cfg.sh -n dnode4 -c clog -v 1
system sh/cfg.sh -n dnode4 -c clog -v 1
print ========== step1
print ========== step1
system sh/exec.sh -n dnode1 -s start
system sh/exec
_up
.sh -n dnode1 -s start
sql connect
sql connect
sleep 3000
sleep 3000
...
@@ -52,14 +52,14 @@ sql insert into d2.t2 values(now+4s, 22)
...
@@ -52,14 +52,14 @@ sql insert into d2.t2 values(now+4s, 22)
sql insert into d2.t2 values(now+5s, 21)
sql insert into d2.t2 values(now+5s, 21)
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
if $data3_1
92.168.0.1
!= 2 then
if $data3_1 != 2 then
return -1
return -1
endi
endi
print ========== step2
print ========== step2
sql create dnode 192.168.0.2
sql create dnode 192.168.0.2
system sh/exec.sh -n dnode2 -s start
system sh/exec
_up
.sh -n dnode2 -s start
sleep 9000
sleep 9000
sql create database d3 replica 2 tables 4
sql create database d3 replica 2 tables 4
...
@@ -79,17 +79,17 @@ show2:
...
@@ -79,17 +79,17 @@ show2:
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
if $data3_1
92.168.0.1
!= 3 then
if $data3_1 != 3 then
goto show2
goto show2
endi
endi
if $data3_
192.168.0.
2 != 1 then
if $data3_2 != 1 then
goto show2
goto show2
endi
endi
print ========== step3
print ========== step3
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec
_up
.sh -n dnode2 -s stop -x SIGINT
sql drop dnode 192.168.0.2
sql drop dnode 192.168.0.2
sleep 7001
sleep 7001
...
@@ -102,12 +102,12 @@ show3:
...
@@ -102,12 +102,12 @@ show3:
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2 $data5_192.168.0.2
print 192.168.0.2
openVnodes $data3_
2 $data5_192.168.0.2
print ========== step4
print ========== step4
sql create dnode 192.168.0.3
sql create dnode 192.168.0.3
system sh/exec.sh -n dnode3 -s start
system sh/exec
_up
.sh -n dnode3 -s start
$x = 0
$x = 0
show4:
show4:
...
@@ -118,16 +118,16 @@ show4:
...
@@ -118,16 +118,16 @@ show4:
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
if $data3_
192.168.0.
2 != null then
if $data3_2 != null then
goto show4
goto show4
endi
endi
if $data3_1
92.168.0.1
!= 3 then
if $data3_1 != 3 then
goto show4
goto show4
endi
endi
if $data3_
192.168.0.
3 != 1 then
if $data3_3 != 1 then
goto show4
goto show4
endi
endi
...
...
tests/script/unique/dnode/vnode_clean.sim
浏览文件 @
787f6387
...
@@ -31,7 +31,7 @@ system sh/cfg.sh -n dnode3 -c clog -v 1
...
@@ -31,7 +31,7 @@ system sh/cfg.sh -n dnode3 -c clog -v 1
system sh/cfg.sh -n dnode4 -c clog -v 1
system sh/cfg.sh -n dnode4 -c clog -v 1
print ========== step1
print ========== step1
system sh/exec.sh -n dnode1 -s start
system sh/exec
_up
.sh -n dnode1 -s start
sql connect
sql connect
sql create database d1 tables 4
sql create database d1 tables 4
...
@@ -43,14 +43,14 @@ sql insert into d1.t1 values(now+4s, 12)
...
@@ -43,14 +43,14 @@ sql insert into d1.t1 values(now+4s, 12)
sql insert into d1.t1 values(now+5s, 11)
sql insert into d1.t1 values(now+5s, 11)
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
if $data3_1
92.168.0.1
!= 3 then
if $data3_1 != 3 then
return -1
return -1
endi
endi
print ========== step2
print ========== step2
sql create dnode 192.168.0.2
sql create dnode 192.168.0.2
system sh/exec.sh -n dnode2 -s start
system sh/exec
_up
.sh -n dnode2 -s start
$x = 0
$x = 0
show2:
show2:
...
@@ -60,12 +60,12 @@ show2:
...
@@ -60,12 +60,12 @@ show2:
return -1
return -1
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
if $data3_1
92.168.0.1
!= 4 then
if $data3_1 != 4 then
goto show2
goto show2
endi
endi
if $data3_
192.168.0.
2 != 3 then
if $data3_2 != 3 then
goto show2
goto show2
endi
endi
...
@@ -81,12 +81,12 @@ sql insert into d2.t2 values(now+5s, 21)
...
@@ -81,12 +81,12 @@ sql insert into d2.t2 values(now+5s, 21)
$x = 0
$x = 0
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
if $data3_1
92.168.0.1
!= 4 then
if $data3_1 != 4 then
return -1
return -1
endi
endi
if $data3_
192.168.0.
2 != 2 then
if $data3_2 != 2 then
return -1
return -1
endi
endi
...
@@ -101,19 +101,19 @@ show4:
...
@@ -101,19 +101,19 @@ show4:
return -1
return -1
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
if $data3_1
92.168.0.1
!= 2 then
if $data3_1 != 2 then
goto show4
goto show4
endi
endi
if $data3_
192.168.0.
2 != null then
if $data3_2 != null then
goto show4
goto show4
endi
endi
if $rows != 1 then
if $rows != 1 then
goto show4
goto show4
endi
endi
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec
_up
.sh -n dnode2 -s stop -x SIGINT
print ========== step5
print ========== step5
sleep 2000
sleep 2000
...
@@ -125,7 +125,7 @@ system sh/cfg.sh -n dnode2 -c balanceMonitorInterval -v 1
...
@@ -125,7 +125,7 @@ system sh/cfg.sh -n dnode2 -c balanceMonitorInterval -v 1
system sh/cfg.sh -n dnode2 -c balanceStartInterval -v 10
system sh/cfg.sh -n dnode2 -c balanceStartInterval -v 10
system sh/cfg.sh -n dnode2 -c mgmtEqualVnodeNum -v 4
system sh/cfg.sh -n dnode2 -c mgmtEqualVnodeNum -v 4
system sh/cfg.sh -n dnode2 -c clog -v 1
system sh/cfg.sh -n dnode2 -c clog -v 1
system sh/exec.sh -n dnode2 -s start
system sh/exec
_up
.sh -n dnode2 -s start
$x = 0
$x = 0
show5:
show5:
...
@@ -135,12 +135,12 @@ show5:
...
@@ -135,12 +135,12 @@ show5:
return -1
return -1
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
if $data3_1
92.168.0.1
!= 4 then
if $data3_1 != 4 then
goto show5
goto show5
endi
endi
if $data3_
192.168.0.
2 != 2 then
if $data3_2 != 2 then
goto show5
goto show5
endi
endi
...
@@ -154,18 +154,18 @@ sql insert into d3.t3 values(now+4s, 32)
...
@@ -154,18 +154,18 @@ sql insert into d3.t3 values(now+4s, 32)
sql insert into d3.t3 values(now+5s, 31)
sql insert into d3.t3 values(now+5s, 31)
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
if $data3_1
92.168.0.1
!= 4 then
if $data3_1 != 4 then
return -1
return -1
endi
endi
if $data3_
192.168.0.
2 != 1 then
if $data3_2 != 1 then
return -1
return -1
endi
endi
print ========== step7
print ========== step7
sql create dnode 192.168.0.3
sql create dnode 192.168.0.3
system sh/exec.sh -n dnode3 -s start
system sh/exec
_up
.sh -n dnode3 -s start
$x = 0
$x = 0
show7:
show7:
...
@@ -176,16 +176,16 @@ show7:
...
@@ -176,16 +176,16 @@ show7:
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
if $data3_1
92.168.0.1
!= 4 then
if $data3_1 != 4 then
goto show7
goto show7
endi
endi
if $data3_
192.168.0.
2 != 2 then
if $data3_2 != 2 then
goto show7
goto show7
endi
endi
if $data3_
192.168.0.
3 != 3 then
if $data3_3 != 3 then
goto show7
goto show7
endi
endi
...
@@ -206,16 +206,16 @@ show8:
...
@@ -206,16 +206,16 @@ show8:
return -1
return -1
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
if $data3_1
92.168.0.1
!= 4 then
if $data3_1 != 4 then
goto show8
goto show8
endi
endi
if $data3_
192.168.0.
2 != 2 then
if $data3_2 != 2 then
goto show8
goto show8
endi
endi
if $data3_
192.168.0.
3 != 2 then
if $data3_3 != 2 then
goto show8
goto show8
endi
endi
...
@@ -231,20 +231,20 @@ show9:
...
@@ -231,20 +231,20 @@ show9:
endi
endi
sql show dnodes
sql show dnodes
print 192.168.0.1
freeVnodes $data3_192.168.0.
1
print 192.168.0.1
openVnodes $data3_
1
print 192.168.0.2
freeVnodes $data3_192.168.0.
2
print 192.168.0.2
openVnodes $data3_
2
print 192.168.0.3
freeVnodes $data3_192.168.0.
3
print 192.168.0.3
openVnodes $data3_
3
if $data3_1
92.168.0.1
!= 4 then
if $data3_1 != 4 then
goto show9
goto show9
endi
endi
if $data3_
192.168.0.
2 != null then
if $data3_2 != null then
goto show9
goto show9
endi
endi
if $data3_
192.168.0.
3 != 0 then
if $data3_3 != 0 then
goto show9
goto show9
endi
endi
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec
_up
.sh -n dnode2 -s stop -x SIGINT
print ========== step10
print ========== step10
sql select * from d1.t1 order by t desc
sql select * from d1.t1 order by t desc
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录