Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
a3e214b9
T
TDengine
项目概览
taosdata
/
TDengine
大约 1 年 前同步成功
通知
1184
Star
22015
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看板
体验新版 GitCode,发现更多精彩内容 >>
提交
a3e214b9
编写于
5月 26, 2023
作者:
wmmhello
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix:put poll to push manager if wal not exist when offset is latest
上级
50487255
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
14 addition
and
21 deletion
+14
-21
include/libs/wal/wal.h
include/libs/wal/wal.h
+2
-1
source/dnode/vnode/src/tq/tqUtil.c
source/dnode/vnode/src/tq/tqUtil.c
+3
-9
source/libs/executor/src/executor.c
source/libs/executor/src/executor.c
+0
-3
source/libs/wal/src/walRef.c
source/libs/wal/src/walRef.c
+9
-8
未找到文件。
include/libs/wal/wal.h
浏览文件 @
a3e214b9
...
...
@@ -205,7 +205,8 @@ int32_t walFetchHead(SWalReader *pRead, int64_t ver, SWalCkHead *pHead);
int32_t
walFetchBody
(
SWalReader
*
pRead
,
SWalCkHead
**
ppHead
);
int32_t
walSkipFetchBody
(
SWalReader
*
pRead
,
const
SWalCkHead
*
pHead
);
SWalRef
*
walRefFirstVer
(
SWal
*
,
SWalRef
*
);
void
walRefFirstVer
(
SWal
*
,
SWalRef
*
);
void
walRefLastVer
(
SWal
*
,
SWalRef
*
);
SWalRef
*
walRefCommittedVer
(
SWal
*
);
SWalRef
*
walOpenRef
(
SWal
*
);
...
...
source/dnode/vnode/src/tq/tqUtil.c
浏览文件 @
a3e214b9
...
...
@@ -115,18 +115,12 @@ static int32_t extractResetOffsetVal(STqOffsetVal* pOffsetVal, STQ* pTq, STqHand
tqOffsetResetToData
(
pOffsetVal
,
0
,
0
);
}
}
else
{
pHandle
->
pRef
=
walRefFirstVer
(
pTq
->
pVnode
->
pWal
,
pHandle
->
pRef
);
if
(
pHandle
->
pRef
==
NULL
)
{
terrno
=
TSDB_CODE_OUT_OF_MEMORY
;
return
-
1
;
}
// offset set to previous version when init
walRefFirstVer
(
pTq
->
pVnode
->
pWal
,
pHandle
->
pRef
);
tqOffsetResetToLog
(
pOffsetVal
,
pHandle
->
pRef
->
refVer
-
1
);
}
}
else
if
(
reqOffset
.
type
==
TMQ_OFFSET__RESET_LATEST
)
{
// offset set to previous version when init
tqOffsetResetToLog
(
pOffsetVal
,
walGetLastVer
(
pTq
->
pVnode
->
pWal
)
);
walRefLastVer
(
pTq
->
pVnode
->
pWal
,
pHandle
->
pRef
);
tqOffsetResetToLog
(
pOffsetVal
,
pHandle
->
pRef
->
refVer
);
}
else
if
(
reqOffset
.
type
==
TMQ_OFFSET__RESET_NONE
)
{
tqError
(
"tmq poll: subkey:%s, no offset committed for consumer:0x%"
PRIx64
" in vg %d, subkey %s, reset none failed"
,
pHandle
->
subKey
,
consumerId
,
vgId
,
pRequest
->
subKey
);
...
...
source/libs/executor/src/executor.c
浏览文件 @
a3e214b9
...
...
@@ -1080,9 +1080,6 @@ int32_t qStreamPrepareScan(qTaskInfo_t tinfo, STqOffsetVal* pOffset, int8_t subT
const
char
*
id
=
GET_TASKID
(
pTaskInfo
);
// if pOffset equal to current offset, means continue consume
char
buf
[
80
]
=
{
0
};
tFormatOffset
(
buf
,
80
,
&
pTaskInfo
->
streamInfo
.
currentOffset
);
qDebug
(
"currentOffset:%s"
,
buf
);
if
(
tOffsetEqual
(
pOffset
,
&
pTaskInfo
->
streamInfo
.
currentOffset
))
{
return
0
;
}
...
...
source/libs/wal/src/walRef.c
浏览文件 @
a3e214b9
...
...
@@ -63,21 +63,22 @@ int32_t walSetRefVer(SWalRef *pRef, int64_t ver) {
return
0
;
}
SWalRef
*
walRefFirstVer
(
SWal
*
pWal
,
SWalRef
*
pRef
)
{
if
(
pRef
==
NULL
)
{
pRef
=
walOpenRef
(
pWal
);
if
(
pRef
==
NULL
)
{
return
NULL
;
}
}
void
walRefFirstVer
(
SWal
*
pWal
,
SWalRef
*
pRef
)
{
taosThreadMutexLock
(
&
pWal
->
mutex
);
int64_t
ver
=
walGetFirstVer
(
pWal
);
pRef
->
refVer
=
ver
;
taosThreadMutexUnlock
(
&
pWal
->
mutex
);
wDebug
(
"vgId:%d, wal ref version %"
PRId64
" for first"
,
pWal
->
cfg
.
vgId
,
ver
);
}
return
pRef
;
void
walRefLastVer
(
SWal
*
pWal
,
SWalRef
*
pRef
)
{
taosThreadMutexLock
(
&
pWal
->
mutex
);
int64_t
ver
=
walGetLastVer
(
pWal
);
pRef
->
refVer
=
ver
;
taosThreadMutexUnlock
(
&
pWal
->
mutex
);
wDebug
(
"vgId:%d, wal ref version %"
PRId64
" for last"
,
pWal
->
cfg
.
vgId
,
ver
);
}
SWalRef
*
walRefCommittedVer
(
SWal
*
pWal
)
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录