Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
4b5ea55d
TDengine
项目概览
taosdata
/
TDengine
1 年多 前同步成功
通知
1185
Star
22016
Fork
4786
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
4b5ea55d
编写于
5月 17, 2023
作者:
H
Hongze Cheng
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
more code
上级
ccbc7c5b
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
47 addition
and
14 deletion
+47
-14
include/util/tarray.h
include/util/tarray.h
+1
-1
source/dnode/vnode/src/tsdb/dev/inc/tsdbFSet.h
source/dnode/vnode/src/tsdb/dev/inc/tsdbFSet.h
+1
-0
source/dnode/vnode/src/tsdb/dev/tsdbFS.c
source/dnode/vnode/src/tsdb/dev/tsdbFS.c
+11
-11
source/dnode/vnode/src/tsdb/dev/tsdbFSet.c
source/dnode/vnode/src/tsdb/dev/tsdbFSet.c
+32
-0
source/util/src/tarray.c
source/util/src/tarray.c
+2
-2
未找到文件。
include/util/tarray.h
浏览文件 @
4b5ea55d
...
...
@@ -138,7 +138,7 @@ size_t taosArrayGetSize(const SArray* pArray);
* @param index
* @param pData
*/
void
*
taosArrayInsert
(
SArray
*
pArray
,
size_t
index
,
void
*
pData
);
void
*
taosArrayInsert
(
SArray
*
pArray
,
size_t
index
,
const
void
*
pData
);
/**
* set data in array
...
...
source/dnode/vnode/src/tsdb/dev/inc/tsdbFSet.h
浏览文件 @
4b5ea55d
...
...
@@ -36,6 +36,7 @@ typedef enum {
int32_t
tsdbFileSetToJson
(
const
STFileSet
*
fset
,
cJSON
*
json
);
int32_t
tsdbJsonToFileSet
(
const
cJSON
*
json
,
STFileSet
*
fset
);
int32_t
tsdbFileSetInit
(
STFileSet
*
pSet
,
int32_t
fid
);
int32_t
tsdbFileSetInitEx
(
const
STFileSet
*
fset1
,
STFileSet
*
fset2
);
int32_t
tsdbFileSetClear
(
STFileSet
*
pSet
);
int32_t
tsdbFileSetEdit
(
STFileSet
*
fset
,
const
STFileOp
*
op
);
...
...
source/dnode/vnode/src/tsdb/dev/tsdbFS.c
浏览文件 @
4b5ea55d
...
...
@@ -89,16 +89,6 @@ static int32_t current_fname(STsdb *pTsdb, char *fname, EFCurrentT ftype) {
return
0
;
}
static
int32_t
fs_from_json_str
(
const
char
*
pData
,
STFileSystem
*
pFS
)
{
int32_t
code
=
0
;
int32_t
lino
;
ASSERTS
(
0
,
"TODO: Not implemented yet"
);
_exit:
return
code
;
}
static
int32_t
save_json
(
const
cJSON
*
json
,
const
char
*
fname
)
{
int32_t
code
=
0
;
...
...
@@ -251,15 +241,25 @@ _exit:
}
static
int32_t
apply_commit_add_fset
(
STFileSystem
*
fs
,
const
STFileSet
*
fset
)
{
// TODO
int32_t
idx
=
taosArraySearchIdx
(
fs
->
cstate
,
fset
,
(
__compar_fn_t
)
tsdbFSetCmprFn
,
TD_GT
);
if
(
idx
<
0
)
idx
=
taosArrayGetSize
(
fs
->
cstate
);
STFileSet
*
pFileSet
=
taosArrayInsert
(
fs
->
cstate
,
idx
,
fset
);
if
(
pFileSet
==
NULL
)
return
TSDB_CODE_OUT_OF_MEMORY
;
int32_t
code
=
tsdbFileSetInitEx
(
fset
,
pFileSet
);
if
(
code
)
return
code
;
return
0
;
}
static
int32_t
apply_commit_del_fset
(
STFileSystem
*
fs
,
const
STFileSet
*
fset
)
{
// TODO
ASSERT
(
0
);
return
0
;
}
static
int32_t
apply_commit_upd_fset
(
STFileSystem
*
fs
,
STFileSet
*
fset_from
,
const
STFileSet
*
fset_to
)
{
// TODO
ASSERT
(
0
);
return
0
;
}
static
int32_t
apply_commit
(
STFileSystem
*
fs
)
{
...
...
source/dnode/vnode/src/tsdb/dev/tsdbFSet.c
浏览文件 @
4b5ea55d
...
...
@@ -258,6 +258,38 @@ int32_t tsdbFileSetEdit(STFileSet *fset, const STFileOp *op) {
int32_t
tsdbFileSetInit
(
STFileSet
*
pSet
,
int32_t
fid
)
{
return
fset_init
(
pSet
,
fid
);
}
int32_t
tsdbFileSetInitEx
(
const
STFileSet
*
fset1
,
STFileSet
*
fset2
)
{
int32_t
code
;
fset_init
(
fset2
,
fset1
->
fid
);
for
(
int32_t
ftype
=
TSDB_FTYPE_MIN
;
ftype
<
TSDB_FTYPE_MAX
;
++
ftype
)
{
if
(
fset1
->
farr
[
ftype
]
==
NULL
)
continue
;
code
=
tsdbTFileObjCreate
(
&
fset2
->
farr
[
ftype
]);
if
(
code
)
return
code
;
fset2
->
farr
[
ftype
]
->
f
=
fset1
->
farr
[
ftype
]
->
f
;
}
SRBTreeIter
iter
=
tRBTreeIterCreate
(
&
fset1
->
lvlTree
,
1
);
for
(
SRBTreeNode
*
node
=
tRBTreeIterNext
(
&
iter
);
node
;
node
=
tRBTreeIterNext
(
&
iter
))
{
SSttLvl
*
lvl1
=
TCONTAINER_OF
(
node
,
SSttLvl
,
rbtn
);
SSttLvl
*
lvl2
=
taosMemoryCalloc
(
1
,
sizeof
(
*
lvl2
));
if
(
lvl2
==
NULL
)
return
TSDB_CODE_OUT_OF_MEMORY
;
add_stt_lvl
(
fset2
,
lvl2
);
SRBTreeIter
iter2
=
tRBTreeIterCreate
(
&
lvl1
->
sttTree
,
1
);
for
(
SRBTreeNode
*
node2
=
tRBTreeIterNext
(
&
iter2
);
node2
;
node2
=
tRBTreeIterNext
(
&
iter2
))
{
STFileObj
*
fobj1
=
TCONTAINER_OF
(
node2
,
STFileObj
,
rbtn
);
STFileObj
*
fobj2
;
code
=
tsdbTFileObjCreate
(
&
fobj2
);
if
(
code
)
return
code
;
fobj2
->
f
=
fobj1
->
f
;
add_file_to_stt_lvl
(
lvl2
,
fobj2
);
}
}
return
0
;
}
int32_t
tsdbFileSetClear
(
STFileSet
*
pSet
)
{
// TODO
return
0
;
...
...
source/util/src/tarray.c
浏览文件 @
4b5ea55d
...
...
@@ -221,7 +221,7 @@ size_t taosArrayGetSize(const SArray* pArray) {
return
TARRAY_SIZE
(
pArray
);
}
void
*
taosArrayInsert
(
SArray
*
pArray
,
size_t
index
,
void
*
pData
)
{
void
*
taosArrayInsert
(
SArray
*
pArray
,
size_t
index
,
const
void
*
pData
)
{
if
(
pArray
==
NULL
||
pData
==
NULL
)
{
return
NULL
;
}
...
...
@@ -488,7 +488,7 @@ void* taosDecodeArray(const void* buf, SArray** pArray, FDecode decode, int32_t
// order array<type *>
void
taosArraySortPWithExt
(
SArray
*
pArray
,
__ext_compar_fn_t
fn
,
const
void
*
param
)
{
taosqsort
(
pArray
->
pData
,
pArray
->
size
,
pArray
->
elemSize
,
param
,
fn
);
// taosArrayGetSize(pArray) > 8 ? taosArrayQuickSort(pArray, fn, param) : taosArrayInsertSort(pArray, fn, param);
// taosArrayGetSize(pArray) > 8 ? taosArrayQuickSort(pArray, fn, param) : taosArrayInsertSort(pArray, fn, param);
}
void
taosArraySwap
(
SArray
*
a
,
SArray
*
b
)
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录