Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
782dcf11
T
TDengine
项目概览
taosdata
/
TDengine
1 年多 前同步成功
通知
1185
Star
22016
Fork
4786
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
782dcf11
编写于
1月 06, 2022
作者:
S
Shengliang Guan
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
minor changes
上级
cdb3fd24
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
25 addition
and
25 deletion
+25
-25
source/dnode/mgmt/impl/src/dndMnode.c
source/dnode/mgmt/impl/src/dndMnode.c
+25
-25
未找到文件。
source/dnode/mgmt/impl/src/dndMnode.c
浏览文件 @
782dcf11
...
...
@@ -305,18 +305,18 @@ static void dndBuildMnodeOpenOption(SDnode *pDnode, SMnodeOpt *pOption) {
memcpy
(
&
pOption
->
replicas
,
pMgmt
->
replicas
,
sizeof
(
SReplica
)
*
TSDB_MAX_REPLICA
);
}
static
int32_t
dndBuildMnodeOptionFrom
Msg
(
SDnode
*
pDnode
,
SMnodeOpt
*
pOption
,
SDCreateMnodeMsg
*
pMsg
)
{
static
int32_t
dndBuildMnodeOptionFrom
Req
(
SDnode
*
pDnode
,
SMnodeOpt
*
pOption
,
SDCreateMnodeMsg
*
pReq
)
{
dndInitMnodeOption
(
pDnode
,
pOption
);
pOption
->
dnodeId
=
dndGetDnodeId
(
pDnode
);
pOption
->
clusterId
=
dndGetClusterId
(
pDnode
);
pOption
->
replica
=
p
Msg
->
replica
;
pOption
->
replica
=
p
Req
->
replica
;
pOption
->
selfIndex
=
-
1
;
for
(
int32_t
i
=
0
;
i
<
p
Msg
->
replica
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
p
Req
->
replica
;
++
i
)
{
SReplica
*
pReplica
=
&
pOption
->
replicas
[
i
];
pReplica
->
id
=
p
Msg
->
replicas
[
i
].
id
;
pReplica
->
port
=
p
Msg
->
replicas
[
i
].
port
;
memcpy
(
pReplica
->
fqdn
,
p
Msg
->
replicas
[
i
].
fqdn
,
TSDB_FQDN_LEN
);
pReplica
->
id
=
p
Req
->
replicas
[
i
].
id
;
pReplica
->
port
=
p
Req
->
replicas
[
i
].
port
;
memcpy
(
pReplica
->
fqdn
,
p
Req
->
replicas
[
i
].
fqdn
,
TSDB_FQDN_LEN
);
if
(
pReplica
->
id
==
pOption
->
dnodeId
)
{
pOption
->
selfIndex
=
i
;
}
...
...
@@ -423,26 +423,26 @@ static int32_t dndDropMnode(SDnode *pDnode) {
return
0
;
}
static
SDCreateMnodeMsg
*
dndParseCreateMnode
Msg
(
SRpcMsg
*
pRpcMsg
)
{
SDCreateMnodeMsg
*
p
Msg
=
pRpcMsg
->
pCont
;
p
Msg
->
dnodeId
=
htonl
(
pMsg
->
dnodeId
);
for
(
int32_t
i
=
0
;
i
<
p
Msg
->
replica
;
++
i
)
{
p
Msg
->
replicas
[
i
].
id
=
htonl
(
pMsg
->
replicas
[
i
].
id
);
p
Msg
->
replicas
[
i
].
port
=
htons
(
pMsg
->
replicas
[
i
].
port
);
static
SDCreateMnodeMsg
*
dndParseCreateMnode
Req
(
SRpcMsg
*
pReq
)
{
SDCreateMnodeMsg
*
p
Create
=
pReq
->
pCont
;
p
Create
->
dnodeId
=
htonl
(
pCreate
->
dnodeId
);
for
(
int32_t
i
=
0
;
i
<
p
Create
->
replica
;
++
i
)
{
p
Create
->
replicas
[
i
].
id
=
htonl
(
pCreate
->
replicas
[
i
].
id
);
p
Create
->
replicas
[
i
].
port
=
htons
(
pCreate
->
replicas
[
i
].
port
);
}
return
p
Msg
;
return
p
Create
;
}
int32_t
dndProcessCreateMnodeReq
(
SDnode
*
pDnode
,
SRpcMsg
*
pR
pcMsg
)
{
SDCreateMnodeMsg
*
p
Msg
=
dndParseCreateMnodeMsg
(
pRpcMsg
);
int32_t
dndProcessCreateMnodeReq
(
SDnode
*
pDnode
,
SRpcMsg
*
pR
eq
)
{
SDCreateMnodeMsg
*
p
Create
=
dndParseCreateMnodeReq
(
pReq
);
if
(
p
Msg
->
dnodeId
!=
dndGetDnodeId
(
pDnode
))
{
if
(
p
Create
->
dnodeId
!=
dndGetDnodeId
(
pDnode
))
{
terrno
=
TSDB_CODE_DND_MNODE_ID_INVALID
;
return
-
1
;
}
else
{
SMnodeOpt
option
=
{
0
};
if
(
dndBuildMnodeOptionFrom
Msg
(
pDnode
,
&
option
,
pMsg
)
!=
0
)
{
if
(
dndBuildMnodeOptionFrom
Req
(
pDnode
,
&
option
,
pCreate
)
!=
0
)
{
return
-
1
;
}
...
...
@@ -450,16 +450,16 @@ int32_t dndProcessCreateMnodeReq(SDnode *pDnode, SRpcMsg *pRpcMsg) {
}
}
int32_t
dndProcessAlterMnodeReq
(
SDnode
*
pDnode
,
SRpcMsg
*
pR
pcMsg
)
{
SDAlterMnodeMsg
*
p
Msg
=
dndParseCreateMnodeMsg
(
pRpcMsg
);
int32_t
dndProcessAlterMnodeReq
(
SDnode
*
pDnode
,
SRpcMsg
*
pR
eq
)
{
SDAlterMnodeMsg
*
p
Alter
=
dndParseCreateMnodeReq
(
pReq
);
if
(
p
Msg
->
dnodeId
!=
dndGetDnodeId
(
pDnode
))
{
if
(
p
Alter
->
dnodeId
!=
dndGetDnodeId
(
pDnode
))
{
terrno
=
TSDB_CODE_DND_MNODE_ID_INVALID
;
return
-
1
;
}
SMnodeOpt
option
=
{
0
};
if
(
dndBuildMnodeOptionFrom
Msg
(
pDnode
,
&
option
,
pMsg
)
!=
0
)
{
if
(
dndBuildMnodeOptionFrom
Req
(
pDnode
,
&
option
,
pAlter
)
!=
0
)
{
return
-
1
;
}
...
...
@@ -470,11 +470,11 @@ int32_t dndProcessAlterMnodeReq(SDnode *pDnode, SRpcMsg *pRpcMsg) {
return
dndWriteMnodeFile
(
pDnode
);
}
int32_t
dndProcessDropMnodeReq
(
SDnode
*
pDnode
,
SRpcMsg
*
pR
pcMsg
)
{
SDDropMnodeMsg
*
p
Msg
=
pRpcMsg
->
pCont
;
p
Msg
->
dnodeId
=
htonl
(
pMsg
->
dnodeId
);
int32_t
dndProcessDropMnodeReq
(
SDnode
*
pDnode
,
SRpcMsg
*
pR
eq
)
{
SDDropMnodeMsg
*
p
Drop
=
pReq
->
pCont
;
p
Drop
->
dnodeId
=
htonl
(
pDrop
->
dnodeId
);
if
(
p
Msg
->
dnodeId
!=
dndGetDnodeId
(
pDnode
))
{
if
(
p
Drop
->
dnodeId
!=
dndGetDnodeId
(
pDnode
))
{
terrno
=
TSDB_CODE_DND_MNODE_ID_INVALID
;
return
-
1
;
}
else
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录