Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
daqiang163
TDengine
提交
8c06d595
T
TDengine
项目概览
daqiang163
/
TDengine
与 Fork 源项目一致
Fork自
taosdata / TDengine
通知
1
Star
1
Fork
0
代码
文件
提交
分支
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看板
体验新版 GitCode,发现更多精彩内容 >>
提交
8c06d595
编写于
5月 14, 2021
作者:
M
Minglei Jin
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[TD-4081]<fix>: fix vnode dropping
上级
e08fe44f
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
10 addition
and
4 deletion
+10
-4
src/vnode/src/vnodeMain.c
src/vnode/src/vnodeMain.c
+0
-2
src/vnode/src/vnodeMgmt.c
src/vnode/src/vnodeMgmt.c
+2
-0
src/vnode/src/vnodeRead.c
src/vnode/src/vnodeRead.c
+6
-2
src/vnode/src/vnodeWrite.c
src/vnode/src/vnodeWrite.c
+2
-0
未找到文件。
src/vnode/src/vnodeMain.c
浏览文件 @
8c06d595
...
...
@@ -124,8 +124,6 @@ int32_t vnodeDrop(int32_t vgId) {
vInfo
(
"vgId:%d, vnode will be dropped, refCount:%d pVnode:%p"
,
pVnode
->
vgId
,
pVnode
->
refCount
,
pVnode
);
pVnode
->
dropped
=
1
;
// remove from hash, so new messages wont be consumed
vnodeRemoveFromHash
(
pVnode
);
vnodeRelease
(
pVnode
);
vnodeCleanupInMWorker
(
pVnode
);
...
...
src/vnode/src/vnodeMgmt.c
浏览文件 @
8c06d595
...
...
@@ -118,6 +118,8 @@ void vnodeRelease(void *vparam) {
tsem_post
(
&
pVnode
->
sem
);
}
}
else
{
vnodeRemoveFromHash
(
pVnode
);
vDebug
(
"vgId:%d, vnode will be destroyed, refCount:%d pVnode:%p"
,
pVnode
->
vgId
,
refCount
,
pVnode
);
vnodeDestroyInMWorker
(
pVnode
);
int32_t
count
=
taosHashGetSize
(
tsVnodesHash
);
...
...
src/vnode/src/vnodeRead.c
浏览文件 @
8c06d595
...
...
@@ -117,14 +117,18 @@ static SVReadMsg *vnodeBuildVReadMsg(SVnodeObj *pVnode, void *pCont, int32_t con
}
int32_t
vnodeWriteToRQueue
(
void
*
vparam
,
void
*
pCont
,
int32_t
contLen
,
int8_t
qtype
,
void
*
rparam
)
{
SVnodeObj
*
pVnode
=
vparam
;
if
(
pVnode
->
dropped
)
{
return
TSDB_CODE_VND_INVALID_VGROUP_ID
;
}
SVReadMsg
*
pRead
=
vnodeBuildVReadMsg
(
vparam
,
pCont
,
contLen
,
qtype
,
rparam
);
if
(
pRead
==
NULL
)
{
assert
(
terrno
!=
0
);
return
terrno
;
}
SVnodeObj
*
pVnode
=
vparam
;
int32_t
code
=
vnodeCheckRead
(
pVnode
);
if
(
code
!=
TSDB_CODE_SUCCESS
)
{
taosFreeQitem
(
pRead
);
...
...
src/vnode/src/vnodeWrite.c
浏览文件 @
8c06d595
...
...
@@ -386,4 +386,6 @@ void vnodeWaitWriteCompleted(SVnodeObj *pVnode) {
vTrace
(
"vgId:%d, queued wmsg num:%d"
,
pVnode
->
vgId
,
pVnode
->
queuedWMsg
);
taosMsleep
(
10
);
}
taosMsleep
(
1000
*
3
);
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录