Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
33d58a5d
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看板
提交
33d58a5d
编写于
6月 28, 2022
作者:
H
Haojun Liao
浏览文件
操作
浏览文件
下载
差异文件
Merge remote-tracking branch 'origin/feat/tsdb_refact' into feat/tsdb_refact
上级
21f494a4
d3e741a8
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
30 addition
and
21 deletion
+30
-21
source/dnode/vnode/src/tsdb/tsdbCache.c
source/dnode/vnode/src/tsdb/tsdbCache.c
+30
-21
未找到文件。
source/dnode/vnode/src/tsdb/tsdbCache.c
浏览文件 @
33d58a5d
...
...
@@ -165,21 +165,23 @@ static int32_t getMemLastRow(SMemTable *mem, tb_uid_t suid, tb_uid_t uid, STSRow
static
int32_t
getTableDelDataFromDelIdx
(
SDelFReader
*
pDelReader
,
SDelIdx
*
pDelIdx
,
SArray
*
aDelData
)
{
int32_t
code
=
0
;
SMapData
delDataMap
;
SDelData
delData
;
//
SMapData delDataMap;
//
SDelData delData;
if
(
pDelIdx
)
{
tMapDataReset
(
&
delDataMap
);
//
tMapDataReset(&delDataMap);
// code = tsdbReadDelData(pDelReader, pDelIdx, &delDataMap, NULL);
code
=
tsdbReadDelData
(
pDelReader
,
pDelIdx
,
aDelData
,
NULL
);
if
(
code
)
goto
_err
;
/*
for (int32_t iDelData = 0; iDelData < delDataMap.nItem; ++iDelData) {
code = tMapDataGetItemByIdx(&delDataMap, iDelData, &delData, tGetDelData);
if (code) goto _err;
taosArrayPush(aDelData, &delData);
}
*/
}
_err:
...
...
@@ -241,14 +243,17 @@ _err:
static
int32_t
getTableDelIdx
(
SDelFReader
*
pDelFReader
,
tb_uid_t
suid
,
tb_uid_t
uid
,
SDelIdx
*
pDelIdx
)
{
int32_t
code
=
0
;
SMapData
delIdxMap
;
SDelIdx
idx
=
{.
suid
=
suid
,
.
uid
=
uid
};
// SMapData delIdxMap;
SArray
*
pDelIdxArray
=
taosArrayInit
(
32
,
sizeof
(
SDelIdx
));
SDelIdx
idx
=
{.
suid
=
suid
,
.
uid
=
uid
};
tMapDataReset
(
&
delIdxMap
);
// code = tsdbReadDelIdx(pDelFReader, &delIdxMap, NULL);
// tMapDataReset(&delIdxMap);
// code = tsdbReadDelIdx(pDelFReader, &delIdxMap, NULL);
code
=
tsdbReadDelIdx
(
pDelFReader
,
pDelIdxArray
,
NULL
);
if
(
code
)
goto
_err
;
code
=
tMapDataSearch
(
&
delIdxMap
,
&
idx
,
tGetDelIdx
,
tCmprDelIdx
,
pDelIdx
);
// code = tMapDataSearch(&delIdxMap, &idx, tGetDelIdx, tCmprDelIdx, pDelIdx);
pDelIdx
=
taosArraySearch
(
pDelIdxArray
,
&
idx
,
tCmprDelIdx
,
TD_EQ
);
if
(
code
)
goto
_err
;
_err:
...
...
@@ -590,22 +595,26 @@ static int32_t mergeLastRow(tb_uid_t uid, STsdb *pTsdb, STSRow **ppRow) {
*
ppRow
=
NULL
;
SDelFReader
*
pDelFReader
;
SDelFile
*
pDelFile
=
tsdbFSStateGetDelFile
(
pTsdb
->
fs
->
cState
);
code
=
tsdbDelFReaderOpen
(
&
pDelFReader
,
pDelFile
,
pTsdb
,
NULL
);
if
(
code
)
goto
_err
;
SArray
*
pSkyline
=
taosArrayInit
(
32
,
sizeof
(
TSDBKEY
));
SDel
Idx
delIdx
;
code
=
getTableDelIdx
(
pDelFReader
,
suid
,
uid
,
&
delIdx
);
if
(
code
)
goto
_er
r
;
SDel
File
*
pDelFile
=
tsdbFSStateGetDelFile
(
pTsdb
->
fs
->
cState
)
;
if
(
pDelFile
)
{
SDelFReader
*
pDelFReade
r
;
SArray
*
pSkyline
=
taosArrayInit
(
32
,
sizeof
(
TSDBKEY
));
code
=
getTableDelSkyline
(
pMem
,
pIMem
,
pDelFReader
,
&
delIdx
,
pSkyline
);
if
(
code
)
goto
_err
;
code
=
tsdbDelFReaderOpen
(
&
pDelFReader
,
pDelFile
,
pTsdb
,
NULL
);
if
(
code
)
goto
_err
;
int
iSkyline
=
taosArrayGetSize
(
pSkyline
)
-
1
;
SDelIdx
delIdx
;
code
=
getTableDelIdx
(
pDelFReader
,
suid
,
uid
,
&
delIdx
);
if
(
code
)
goto
_err
;
code
=
getTableDelSkyline
(
pMem
,
pIMem
,
pDelFReader
,
&
delIdx
,
pSkyline
);
if
(
code
)
goto
_err
;
tsdbDelFReaderClose
(
pDelFReader
);
tsdbDelFReaderClose
(
pDelFReader
);
}
int
iSkyline
=
taosArrayGetSize
(
pSkyline
)
-
1
;
SBlockIdx
idx
=
{.
suid
=
suid
,
.
uid
=
uid
};
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录