Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
871f6656
T
TDengine
项目概览
taosdata
/
TDengine
大约 2 年 前同步成功
通知
1193
Star
22018
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看板
提交
871f6656
编写于
6月 28, 2023
作者:
dengyihao
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
add checkpoint
上级
f6d5d0c8
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
78 addition
and
7 deletion
+78
-7
source/dnode/vnode/src/inc/vnodeInt.h
source/dnode/vnode/src/inc/vnodeInt.h
+16
-0
source/dnode/vnode/src/tq/tqStreamStateSnap.c
source/dnode/vnode/src/tq/tqStreamStateSnap.c
+1
-1
source/dnode/vnode/src/tq/tqStreamTaskSnap.c
source/dnode/vnode/src/tq/tqStreamTaskSnap.c
+3
-5
source/dnode/vnode/src/vnd/vnodeSnapshot.c
source/dnode/vnode/src/vnd/vnodeSnapshot.c
+58
-1
未找到文件。
source/dnode/vnode/src/inc/vnodeInt.h
浏览文件 @
871f6656
...
@@ -307,6 +307,22 @@ int32_t tqOffsetWriterOpen(STQ* pTq, int64_t sver, int64_t ever, STqOffsetWriter
...
@@ -307,6 +307,22 @@ int32_t tqOffsetWriterOpen(STQ* pTq, int64_t sver, int64_t ever, STqOffsetWriter
int32_t
tqOffsetWriterClose
(
STqOffsetWriter
**
ppWriter
,
int8_t
rollback
);
int32_t
tqOffsetWriterClose
(
STqOffsetWriter
**
ppWriter
,
int8_t
rollback
);
int32_t
tqOffsetSnapWrite
(
STqOffsetWriter
*
pWriter
,
uint8_t
*
pData
,
uint32_t
nData
);
int32_t
tqOffsetSnapWrite
(
STqOffsetWriter
*
pWriter
,
uint8_t
*
pData
,
uint32_t
nData
);
// SStreamTaskWriter ======================================
// SStreamTaskWriter ======================================
int32_t
streamTaskSnapReaderOpen
(
STQ
*
pTq
,
int64_t
sver
,
int64_t
ever
,
SStreamTaskReader
**
ppReader
);
int32_t
streamTaskSnapReaderClose
(
SStreamTaskReader
*
pReader
);
int32_t
streamTaskSnapRead
(
SStreamTaskReader
*
pReader
,
uint8_t
**
ppData
);
int32_t
streamTaskSnapWriterOpen
(
STQ
*
pTq
,
int64_t
sver
,
int64_t
ever
,
SStreamTaskWriter
**
ppWriter
);
int32_t
streamTaskSnapWriterClose
(
SStreamTaskWriter
*
ppWriter
,
int8_t
rollback
);
int32_t
streamTaskSnapWrite
(
SStreamTaskWriter
*
pWriter
,
uint8_t
*
pData
,
uint32_t
nData
);
int32_t
streamStateSnapReaderOpen
(
STQ
*
pTq
,
int64_t
sver
,
int64_t
ever
,
SStreamStateReader
**
ppReader
);
int32_t
streamStateSnapReaderClose
(
SStreamStateReader
*
pReader
);
int32_t
streamStateSnapRead
(
SStreamStateReader
*
pReader
,
uint8_t
**
ppData
);
int32_t
streamStateSnapWriterOpen
(
STQ
*
pTq
,
int64_t
sver
,
int64_t
ever
,
SStreamStateWriter
**
ppWriter
);
int32_t
streamStateSnapWriterClose
(
SStreamStateWriter
*
pWriter
,
int8_t
rollback
);
int32_t
streamStateSnapWrite
(
SStreamStateWriter
*
pWriter
,
uint8_t
*
pData
,
uint32_t
nData
);
// SStreamTaskReader ======================================
// SStreamTaskReader ======================================
// SStreamStateWriter =====================================
// SStreamStateWriter =====================================
// SStreamStateReader =====================================
// SStreamStateReader =====================================
...
...
source/dnode/vnode/src/tq/tqStreamStateSnap.c
浏览文件 @
871f6656
...
@@ -58,7 +58,7 @@ _err:
...
@@ -58,7 +58,7 @@ _err:
return
code
;
return
code
;
}
}
int32_t
streamStatSnapReaderClose
(
SStreamStateReader
*
pReader
)
{
int32_t
streamStat
e
SnapReaderClose
(
SStreamStateReader
*
pReader
)
{
int32_t
code
=
0
;
int32_t
code
=
0
;
streamSnapReaderClose
(
pReader
->
pReaderImpl
);
streamSnapReaderClose
(
pReader
->
pReaderImpl
);
taosMemoryFree
(
pReader
);
taosMemoryFree
(
pReader
);
...
...
source/dnode/vnode/src/tq/tqStreamTaskSnap.c
浏览文件 @
871f6656
...
@@ -184,10 +184,9 @@ _err:
...
@@ -184,10 +184,9 @@ _err:
return
0
;
return
0
;
}
}
int32_t
streamTaskSnapWriterClose
(
SStreamTaskWriter
**
ppWriter
,
int8_t
rollback
)
{
int32_t
streamTaskSnapWriterClose
(
SStreamTaskWriter
*
pWriter
,
int8_t
rollback
)
{
int32_t
code
=
0
;
int32_t
code
=
0
;
SStreamTaskWriter
*
pWriter
=
*
ppWriter
;
STQ
*
pTq
=
pWriter
->
pTq
;
STQ
*
pTq
=
pWriter
->
pTq
;
if
(
rollback
)
{
if
(
rollback
)
{
tdbAbort
(
pWriter
->
pTq
->
pStreamMeta
->
db
,
pWriter
->
txn
);
tdbAbort
(
pWriter
->
pTq
->
pStreamMeta
->
db
,
pWriter
->
txn
);
...
@@ -199,7 +198,6 @@ int32_t streamTaskSnapWriterClose(SStreamTaskWriter** ppWriter, int8_t rollback)
...
@@ -199,7 +198,6 @@ int32_t streamTaskSnapWriterClose(SStreamTaskWriter** ppWriter, int8_t rollback)
}
}
taosMemoryFree
(
pWriter
);
taosMemoryFree
(
pWriter
);
*
ppWriter
=
NULL
;
// restore from metastore
// restore from metastore
// if (tqMetaRestoreHandle(pTq) < 0) {
// if (tqMetaRestoreHandle(pTq) < 0) {
...
...
source/dnode/vnode/src/vnd/vnodeSnapshot.c
浏览文件 @
871f6656
...
@@ -221,8 +221,41 @@ int32_t vnodeSnapRead(SVSnapReader *pReader, uint8_t **ppData, uint32_t *nData)
...
@@ -221,8 +221,41 @@ int32_t vnodeSnapRead(SVSnapReader *pReader, uint8_t **ppData, uint32_t *nData)
// STREAM ============
// STREAM ============
if
(
!
pReader
->
streamTaskDone
)
{
if
(
!
pReader
->
streamTaskDone
)
{
if
(
pReader
->
pStreamTaskReader
==
NULL
)
{
code
=
streamTaskSnapReaderOpen
(
pReader
->
pVnode
->
pTq
,
pReader
->
sver
,
pReader
->
sver
,
&
pReader
->
pStreamTaskReader
);
if
(
code
)
goto
_err
;
}
code
=
streamTaskSnapRead
(
pReader
->
pStreamTaskReader
,
ppData
);
if
(
code
)
{
goto
_err
;
}
else
{
if
(
*
ppData
)
{
goto
_exit
;
}
else
{
pReader
->
streamTaskDone
=
1
;
code
=
streamTaskSnapReaderClose
(
pReader
->
pStreamTaskReader
);
if
(
code
)
goto
_err
;
}
}
}
}
if
(
!
pReader
->
streamStateDone
)
{
if
(
!
pReader
->
streamStateDone
)
{
if
(
pReader
->
pStreamStateReader
==
NULL
)
{
code
=
streamStateSnapReaderOpen
(
pReader
->
pVnode
->
pTq
,
pReader
->
sver
,
pReader
->
sver
,
&
pReader
->
pStreamStateReader
);
if
(
code
)
goto
_err
;
}
code
=
streamStateSnapRead
(
pReader
->
pStreamStateReader
,
ppData
);
if
(
code
)
{
goto
_err
;
}
else
{
if
(
*
ppData
)
{
goto
_exit
;
}
else
{
pReader
->
streamStateDone
=
1
;
code
=
streamStateSnapReaderClose
(
pReader
->
pStreamStateReader
);
if
(
code
)
goto
_err
;
}
}
}
}
// RSMA ==============
// RSMA ==============
...
@@ -366,6 +399,16 @@ int32_t vnodeSnapWriterClose(SVSnapWriter *pWriter, int8_t rollback, SSnapshot *
...
@@ -366,6 +399,16 @@ int32_t vnodeSnapWriterClose(SVSnapWriter *pWriter, int8_t rollback, SSnapshot *
if
(
code
)
goto
_exit
;
if
(
code
)
goto
_exit
;
}
}
if
(
pWriter
->
pStreamTaskWriter
)
{
code
=
streamTaskSnapWriterClose
(
pWriter
->
pStreamTaskWriter
,
rollback
);
if
(
code
)
goto
_exit
;
}
if
(
pWriter
->
pStreamStateWriter
)
{
code
=
streamStateSnapWriterClose
(
pWriter
->
pStreamStateWriter
,
rollback
);
if
(
code
)
goto
_exit
;
}
if
(
pWriter
->
pRsmaSnapWriter
)
{
if
(
pWriter
->
pRsmaSnapWriter
)
{
code
=
rsmaSnapWriterClose
(
&
pWriter
->
pRsmaSnapWriter
,
rollback
);
code
=
rsmaSnapWriterClose
(
&
pWriter
->
pRsmaSnapWriter
,
rollback
);
if
(
code
)
goto
_exit
;
if
(
code
)
goto
_exit
;
...
@@ -469,9 +512,23 @@ int32_t vnodeSnapWrite(SVSnapWriter *pWriter, uint8_t *pData, uint32_t nData) {
...
@@ -469,9 +512,23 @@ int32_t vnodeSnapWrite(SVSnapWriter *pWriter, uint8_t *pData, uint32_t nData) {
}
break
;
}
break
;
case
SNAP_DATA_TQ_OFFSET
:
{
case
SNAP_DATA_TQ_OFFSET
:
{
}
break
;
}
break
;
case
SNAP_DATA_STREAM_TASK
:
{
case
SNAP_DATA_STREAM_TASK
:
case
SNAP_DATA_STREAM_TASK_CHECKPOINT
:
{
if
(
pWriter
->
pStreamTaskWriter
==
NULL
)
{
code
=
streamTaskSnapWriterOpen
(
pVnode
->
pTq
,
pWriter
->
sver
,
pWriter
->
ever
,
&
pWriter
->
pStreamTaskWriter
);
if
(
code
)
goto
_err
;
}
code
=
streamTaskSnapWrite
(
pWriter
->
pStreamTaskWriter
,
pData
,
nData
);
if
(
code
)
goto
_err
;
}
break
;
}
break
;
case
SNAP_DATA_STREAM_STATE
:
{
case
SNAP_DATA_STREAM_STATE
:
{
if
(
pWriter
->
pStreamStateWriter
==
NULL
)
{
code
=
streamStateSnapWriterOpen
(
pVnode
->
pTq
,
pWriter
->
sver
,
pWriter
->
ever
,
&
pWriter
->
pStreamStateWriter
);
if
(
code
)
goto
_err
;
}
code
=
streamStateSnapWrite
(
pWriter
->
pStreamStateWriter
,
pData
,
nData
);
if
(
code
)
goto
_err
;
}
break
;
}
break
;
case
SNAP_DATA_RSMA1
:
case
SNAP_DATA_RSMA1
:
case
SNAP_DATA_RSMA2
:
case
SNAP_DATA_RSMA2
:
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录